Мы хотели бы просмотреть график того, как две ветки расходятся. Запуск git log --oneline --graph
отображает только текущую ветку. Как включить обе ветки в график?
Git лог-график, покажите, как расходятся две ветки
Ответ 1
git log
принимает значение 0 или больше в качестве аргументов, показывая историю, ведущую к этой фиксации. Если аргумент не указан, предполагается HEAD
. Для вашего случая вы хотите снабдить две ветки головки, которые вы хотите сравнить:
git log --graph --oneline currentbranch otherbranch
Если он не отображается слишком много, вы можете упростить его, используя
git log --graph --oneline --all
который действует так, как если бы вы указали каждую ссылку в .git/refs
, как коммит для отображения.
Ответ 2
У меня была та же проблема и я приземлился здесь, но ни один ответ не помог мне показать, как расходятся две ветки. В конце концов я сам экспериментировал и обнаружил, что это работает.
Учитывая ветки A
и B
, я хочу увидеть, где они расходятся.
git log --oneline --graph --decorate A B 'git merge-base A B'^!
Примечание: не забывайте, что есть ^!
в конце. (Это исключает родителей коммита, возвращенного merge-base
.)
ОБНОВИТЬ
Команда с одной строкой выше не работает, если база слияния более одного. В этом случае сделайте это:
git merge-base A B -a
# e.g. output XXXX YYYY
git log --oneline --graph --decorate A B --not XXXX^ YYYY^
Ответ 3
git log --graph --abbrev-commit --decorate --date=relative --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(bold yellow)%d%C(reset)' --all