我正尝试通过以下方式获取分支的提交清单+提交日期:
git rev-list --oneline --first-parent --date=short --reverse HEAD
在documentation中,显示日期需要--pretty
格式,该格式输出多行。使用--oneline
选项时如何显示提交日期?
答案 0 :(得分:1)
改为使用git log
:
git log --oneline --first-parent --format="%h %cd" HEAD
答案 1 :(得分:0)
Kinda速度慢且不理想,但是您可以执行以下操作:
git rev-list --oneline --first-parent --reverse HEAD | awk '{cmd="git show -s --format=%ci "$1" | cat"; cmd | getline t; print $0 " " t}'
答案 2 :(得分:0)
Git提供了multiple formatting options,您可以传递给pretty
命令以选择要显示的提交的不同部分
例如,如果您只想获取缩短的提交哈希(完整提交哈希为%H),则可以使用:
git rev-list --pretty='format:%h' HEAD
要添加提交主题:
git rev-list --pretty='format:%h %s' HEAD
缩短日期:
git rev-list --pretty='format:%h %s %ad' --date=short HEAD
如果愿意,还可以添加一些漂亮的颜色格式:
git rev-list --pretty='format:%C(auto)%h %s %ad' --date=short HEAD
所有这些都是C样式的字符串格式,因此您可以根据需要添加管道或逗号:
git rev-list --pretty='format:%C(auto)%h | %s | %ad' --date=short HEAD
要删除包含完整提交哈希的中间行,您可以将输出传递给sed / awk:
git rev-list --pretty='format:%C(auto)%h | %s | %ad' --first-parent --reverse --date=short HEAD | awk 'NR%2==0'