Где начинается ветвь Git и какова ее длина?
время от времени меня спрашивают, на какой фиксации начинается определенная ветвь на git или если определенная фиксация была создана на определенной ветви. Конечная точка ветви довольно ясна: именно там находится метка ветви. Но-с чего все началось? Тривиальный ответ был бы: на том, что совершаем, где мы создано этой ветке. Но эта информация, насколько я знаю сейчас, и именно поэтому я задаю вопрос, потерянный после первых коммитов.
пока мы знаем фиксация, где мы разветвились, мы можем нарисовать график, чтобы сделать его ясным:
A - B - C - - - - J [master]
D - E - F - G [branch-A]
H - - I [branch-B]
Я создал ветку-B в commit E Так что это"начало". Я знаю это, потому что я сделал это. Но могут ли другие распознать его таким же образом? Мы могли бы нарисовать такой же график:
A - B - C - - - - J [master]
F - G [branch-A]
/
D - E
H - I [branch-B]
Итак, глядя на график теперь, какая ветвь началась в E, который в B? Это совершение D член обеих ветвей или мы можем четко решить, принадлежит ли он к ветви-A или филиал-Б?
это звучит несколько философски, но на самом деле это не так. супервизоры иногда любят знать, когда была запущена ветвь (обычно это означает начало задачи) и к какой ветви относятся некоторые изменения (чтобы получить цель некоторых изменений - это было необходимо для работы), и я хотел бы знать, предлагает ли git информацию (инструменты, команды) или определения, чтобы правильно ответить на эти вопросы.
Comments