不带标签的git日志

25

所以我正在做类似于这样的事情

 git log --graph --pretty='%h %d %s' -n10

获取我最近提交的简要历史记录。

唯一的问题是我大多数时候不想看到标签,只想看到分支。 %d 但是会显示标签和分支。有没有办法只显示分支名称而不显示标签?


可能是使用git log --decorate限制显示的引用的重复问题。 - Berik
4个回答

13
有点晚了,但我刚遇到了同样的问题。
这应该显示除标签以外的所有内容:
git log --decorate-refs-exclude=refs/tags --pretty='%h %d %s' -n10

10

git log --format="%C(auto) %h %s"

在此输入图片描述


1
我不明白。问题要求删除标签同时保留分支名称,但这也会删除分支名称。 - Jet
@Jet 我清楚地没有仔细阅读问题。¯_(ツ)_/¯ 就我所知,不能完全做到OP想要的。 - Nick Spreitzer
1
https://dev59.com/AmYr5IYBdhLWcg3w7eXb#71201009 看起来似乎能胜任这个任务。 - Ali

-2
将此内容添加至您的 .gitconfig 文件中。
[alias]
        blog = log --graph --oneline --pretty=format:'%Cred%h%Creset - %C(yellow)%s%Creset %C(green)<%an>%Creset %C(blue)@%d%Creset' --abbrev-commit

这样你只会得到提交号码、提交者的信息以及提交到哪个分支。而且你只需要输入git blog,想要查看颜色时就可以看了。

如果你真的只需要分支名称,只需执行以下命令:

git log --graph --oneline --pretty=format:'%C(blue)@%d%Creset'


2
git log --graph --oneline --pretty=format:'%C(blue)@%d%Creset' 仍然显示标签。 - Jistanidiot
对于 git branch|perl -pe s/^..// 中的每个 k,执行以下操作:echo -e git show --pretty=format:"%Cgreen%ci %Cblue%cr%Creset" $k|head -n 1\t$k;done|sort -r - Dahir Warsame
1
@Jistanidiot 尝试使用 git log --branches --remotes --tags --graph --oneline --decorate - Dahir Warsame
1
我遇到了一个“语法错误,附近的标记'|'”问题,第二个仍然显示标签...但我认为我可能可以想出一些方法来删除它们,因为它们现在被标记为“tag:”。 - Jistanidiot
@Jistanidiot,看看这个 - Dahir Warsame
显示剩余4条评论

-3

请查看 git log --help,特别是 %d 选项:

%d: ref names, like the --decorate option of git-log(1)

这是您的标签。所以您要做的就是从命令中删除它,即:

git log --graph --pretty='%h %s' -n10

OP要求保留分支,而上述命令也将它们删除了。 - MrCricket

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接