Git:列出 git 分支,按日期排序(并显示)。
Git:列出 git 分支,按日期排序(并显示)。
如何按照最后一次提交的日期列出并排序git分支?\n我找到了这个:\n
for k in `git branch | sed s/^..//`; do echo -e `git log -1 --pretty=format:"%Cgreen%ci %Cblue%cr%Creset" "$k"`\\t"$k"; done | sort -r
\n我希望普通的git命令有这个功能。有吗?\n我还找到了git show-branch --date-order
,但输出结果不同。
Git是一个非常流行的版本控制系统,用于跟踪和管理代码的变更。在使用Git时,一个常见的需求是列出所有的分支,并按日期排序显示。然而,有些用户在尝试使用某些命令时遇到了问题,并寻求解决方法。
问题的出现原因是在执行以下命令时遇到了错误:git for-each-ref --sort=committerdate refs/heads/ --format='%(color: red)%(committerdate:short) %(color: cyan)%(refname:short)'
。错误提示为fatal: unknown field name: color: red
。
有用户反馈说这个命令在git bash上可以正常运行,但在一些IDE(如vscode)中会报致命错误。还有用户称这个命令在Windows上无法工作。
解决方法是将单引号'
替换为双引号"
。这样修改后的命令应该是:git for-each-ref --sort=committerdate refs/heads/ --format="%(color: red)%(committerdate:short) %(color: cyan)%(refname:short)"
。
这个解决方法被一些用户证实可以解决问题。他们表示在Windows上运行时不再出现错误,并成功地列出了按日期排序的分支。
总之,如果你在使用Git时遇到了类似的问题,可以尝试将单引号替换为双引号来解决。希望这篇文章对你有帮助!
Git:列出git分支,按日期排序(并显示)
问题原因:用户想要按照日期排序并显示git分支,但是不清楚如何实现。
解决方法:可以使用以下命令来实现(v1.7.4):
git for-each-ref --sort=committerdate refs/heads/ --format='%(committerdate:short) %(refname:short)'
`git for-each-ref` 是在1.4.4版本中添加的。
不过我没有找到类似的用于远程分支的命令,但可以使用`refs/remotes/`代替`refs/heads/`。
在Windows命令提示符中,需要将`'`更改为`"`。
对于远程分支,相同的语法也适用:git branch -r --sort=-committerdate --format='%(committerdate:short) %(refname:short)'
如果想要将排序从早到晚改为从晚到早,可以修改排序参数为`--sort=-committerdate`。
以上是关于如何使用Git列出并按日期排序git分支的解决方法。