如何打印git提交以仅打印正文(提交没有标题的消息),但是在一行中?因此提交体线被连接,可能用空格分隔,并作为一行打印一次。
例如,有两个提交A和B,命令:
$ git log --format=%b
打印:
Commit A, line A.1
Commit A, line A.2
Commit B, line B.1
Commit B, line B.2
但我想得到:
Commit A, line A.1 Commit A, line A.2
Commit B, line B.1 Commit B, line B.2
答案 0 :(得分:3)
git rev-list master |
while read sha1; do
git show -s --format='%B' $sha1 | tr -d '\n'; echo
done
让我解释一下:
git rev-list master
列出分支中提交的SHA1 ID。
while read sha1; do
在每个SHA1上运行一个循环。
git show -s --format='%B' $sha1
显示提交的正文。
tr -d '\n'
删除所有行结尾。
echo
最后添加一个换行符。
答案 1 :(得分:0)
“ 3。默认情况下,
git log
打印提交,作者的姓名和电子邮件ID,时间戳和提交消息。但是,该信息不是非常图形化的,特别是如果您想查看分支和合并要显示此信息并限制其他一些数据,可以在git log
中使用以下选项:$ git log --decorate --graph --oneline --all
”(“ Git的“查看DAG,如何做...”版本控制食谱:利用版本控制来改变您的开发工作流程并提高生产率,第二版”;作者Aske Olsson,Rasmus Voss,Emanuele Zattin,Kenneth Geisshirt;出版商:Packt Publishing)。
向老板发送电子邮件时,有时我需要参考最新的提交或特定提交的列表。例如,我以前仅依靠git log -3
来显示最后三个提交。不幸的是,这种方法很冗长(每个提交都包含多行),并且没有显示这些提交所属的分支。我开始使用git log --decorate --graph --oneline --all
,它使我可以显示每个提交所属的分支。对于这种新方法,我还喜欢的一点是,每次提交都使用一行来总结:
C:\Users\jaimemontoya\[path]\app>git log --decorate --graph --oneline --all
* 99d200c (HEAD -> improvedatesformat, origin/improvedatesformat) Subtract 4 hours to the date and time stored in the database because the database uses GMT but El Salvador and Guatemala use GMT-4.
* 244a7a9 Use date() and strtotime() to format date/time in an easy to read format without the verbose and inefficient approach of multiple switch case statements.
* 4d38145 Change date format to 5 June 2020 instead of 06/05/2020 to avoid ambiguity.
* 501d4e4 (markP/subscriptions, marksubscriptions) Change CAPTCHA to reCAPTCHA for contact us form.
* fc860b2 Add ability to send country-wide bulk emails using a template other than Default Template.
* 7f9d2e7 (origin/addsubscriptiontemplates, subscriptionbanneradministration, addsubscriptiontemplates) Remove code that supported template pictures uploaded to media directory, since that implementation was abandoned.
* f6ea277 Add models/subscription_template.php, the version that no longer contains the code that associates pictures to subscription templates.
* 4373e7a Merge branch 'marksubscriptions' into addsubscriptiontemplates
查看它的颜色格式: