如果我使用 Git 创建一个提交,它会提供一个简单的日志消息,其中包含分支名称、简短的 SHA 和一行描述:
[branchname 481f23b] Fixes from code review
但是如果我使用 git log --oneline
,我只会得到简短的 SHA 和主题:
481f23b Fixes from code review
bb4070e Merge branch 'update-docs' into 'master'
e0095b2 Merge remote-tracking branch 'origin/master' into HEAD
我想不出任何方法来使用 git log --format="format:..."
在每一行打印出当前分支名称。
例如,如果我使用 --format="format:[%D %h] %s"
:
[HEAD -> branchname, origin/branchname 481f23b] Fixes from code review
[ bb4070e] Merge branch 'update-docs' into 'master'
[ e0095b2] Merge remote-tracking branch 'origin/master' into HEAD
有什么方法可以配置 git log
以在每个日志行上显示(当前)分支名称?
最佳答案
通过一些 shell 黑客技术,我似乎可以使用 sed
和 bash 替换来模拟它:
git log -200 --format="format:%Cgreen[BRANCHNAME %h]%Creset %s" | (sed "s/BRANCHNAME/$(git symbolic-ref -q --short HEAD || git describe --tags --exact-match)/")
当然,这将显示每个提交现在都是该分支的“一部分”,即使它最初不是。
关于git - 在每 `git log` 行显示当前分支名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32468339/