Ответы:
Попробуйте вариант украсить.
git log --graph --all --decorate
Он комментирует коммиты, на которые указывают теги или ветви.
--prettyвы можете использовать, %dгде вы хотите «украшения».
git log --graph --all --oneline --decorate. У меня есть псевдоним, git graphкоторый использует --pretty(чтобы показать другие вещи, такие как автор и дата), но %dтам не дает мне цвета --decorate. Я использую желтый для всех моих рефов на данный момент, вы знаете , как я могу позволить --pretty«s %dстроку наследуют цвета --decorate?
--prettyформатах были цвета по умолчанию , добавьте %C(auto)перед элементом то, что должно быть окрашено. напримерgit log --pretty=format:"%cd %h %cn %s %C(auto)%d"
Я искал что-то похожее на это - но хотел знать, в какую ветку было внесено изменение. Надеюсь, этот ответ будет полезен и другим.
Я исследую риск с помощью blackboxшифрования, когда репозиторий и его ветви / теги могут стать недоступными для текущего, adminsкогда достаточное количество пользователей покидают проект, и keyringsкаталог не был религиозно основан на оригинале)
Я обнаружил, что ответ ниже был полезен, когда keyringsкаталог не был обновлен с master ...
В основном добавление --sourceбыло то, что мне нужно, чтобы показать ветви / теги. Добавление --name-onlyтакже покажет, какой файл был фактически изменен.
cd /path/to/repo-that-uses-blackbox-encryption
git log --graph --all --decorate --source --name-only keyrings
--sourceодин дает HEADдля всех коммитов. В сочетании с --allэтим, кажется, различают разные ветви, но отображаемая информация не та, которую я ожидаю: для коммитов, которые я сделал master, вместо того, чтобы получить refs/heads/master, я получаю некоторую приватную ветвь ( refs/remotes/origin/…). Я подозреваю, что слияния и / или новые ветки приводят к Gitпотере исторической информации.
--allя могу фильтровать ветки с помощью --branches --remotes=<pattern>, но как только две ветки слились воедино, у Git больше нет информации о том, какая из них имела коммит, когда он был сделан.
Если вы используете oh-my-zsh в качестве терминала, то вам доступны несколько псевдонимов git. Все это можно увидеть в репозитории oh-my-zsh / plugins / git . Если вы не используете этот терминал, вы можете просто взять псевдонимы и вставить те, которые вам нравятся, в вашу среду.
Принятый ответ представляет git log --graph --all --decorateкоманду, которая доступна как glggaпсевдоним в oh-my-zsh.
Лично я предпочитаю glodsпсевдоним, который переводится как:
git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset' --date=short
gitобновления.