На простом языке (надеюсь, с простым примером), что означают показатели впереди/позади на ветке репо Github?
И каковы последствия для этой отрасли и внимание, которое она получает? Является ли "позади" плохим знаком для ветки?
На простом языке (надеюсь, с простым примером), что означают показатели впереди/позади на ветке репо Github?
И каковы последствия для этой отрасли и внимание, которое она получает? Является ли "позади" плохим знаком для ветки?
Ahead - это количество коммитов на этой ветке, которые не существуют в базовой ветки. Позади - количество коммитов на базовой ветки, которых нет в этой ветке.
Впереди и сзади почти что-то вроде "возраста" метрики. Переднее число говорит вам примерно о том, какое влияние оказывает отрасль на базовую ветвь, если она будет объединена. Задействующий номер сообщает вам, сколько работы произошло на базовой ветке, поскольку эта ветка была запущена.
Я считаю, что запасной номер действительно полезен для того, чтобы судить о том, может ли ветвь слияния быть чистой. Когда на базовой ветке произошла большая работа, более вероятно, что две ветки изменили одну и ту же строку (строки). Когда позади большое, это признак того, что вы должны, вероятно, объединить базовую ветку в эту ветвь для синхронизации. Как только вы объедините базовую ветвь в эту ветку, позади будет 0.
Если вы похожи на визуальный тип, посмотрите здесь:
◈ - ◈ - A - ◈ - B
\
◈ - C
A - 2 фиксации позади, а 0 - впереди B
B - 0, а 2 - впереди A
C - 1 фиксация, а 2 - впереди A
C - 3 фиксации сзади и 2 - перед B
Итак, "позади" означает, что другая ветвь совершает это, а "впереди" означает, что эта ветвь совершает другую, не делает.
Метрики, подобные тем, которые вы можете увидеть для этот проект, описывают сравнение с веткой из репо (например, master
)
Техническая деталь иллюстрируется script ", определяющей, какие репозитории впереди/позади" :
Речь идет о проверке:
git rev-list "$localref..$anotherref"
git rev-list "$anotherref..$localref"
В то же время следует отметить, что github "позади" также учитывает слияние. Вы можете проверить "позади" вещи: git log mybranch1 ^ mybranch2, и он должен показать вам то же количество коммитов. Если у вас есть слияния, вы можете исключить их из -no-merges в последней команде.