Bash 当多个提交被推到一起时,如何获取第一个提交消息

Bash 当多个提交被推到一起时,如何获取第一个提交消息,bash,github,git-commit,git-log,github-enterprise,Bash,Github,Git Commit,Git Log,Github Enterprise,我正在尝试编写一个预接收钩子脚本,将git提交与jira id链接起来。我想验证第一次提交(将成为拉请求的标题)是否遵循指定的regex for commit消息。 你能帮我在拉请求中获得提交序列中第一次提交的提交消息吗 我在我的分支机构中遵循以下步骤: git add file1 git commit -m 'JIRA-123 Adding file1' git add file2 git commit -m 'Adding file2' git push origin master 现在,

我正在尝试编写一个预接收钩子脚本,将git提交与jira id链接起来。我想验证第一次提交(将成为拉请求的标题)是否遵循指定的regex for commit消息。 你能帮我在拉请求中获得提交序列中第一次提交的提交消息吗

我在我的分支机构中遵循以下步骤:

git add file1
git commit -m 'JIRA-123 Adding file1'
git add file2
git commit -m 'Adding file2'
git push origin master
现在,我可以使用下面的命令获取特定于推送的最后一条提交消息

git log --max-count=1 --format=%B
输出:添加文件2

但我希望输出是第一个提交消息-

JIRA-123添加文件1

您能告诉我是否有办法使用
git log
git reflog

提前谢谢

使用修订范围,如

修订参数的后缀~表示 是命名提交对象的第四代祖先, 只跟随第一个父母

通用方式 一般来说,git不知道您将在PR中包含多少提交。因此,很难为您的PR选择合适的提交消息。因此,您可以使用它的

比如说,
git commit-m'JIRA-123 Adding file1'
返回的结果如下:

$git commit-m'JIRA-123添加文件1'
>[master de56f51]JIRA-123添加文件1
>1个文件已更改,0个插入(+),0个删除(-)
de56f51
-SHA1是该提交的成员吗

因此,您可以使用git show获得该提交的注释:

$git show de56f51--相当=%B--无修补程序
>JIRA-123添加文件1
更具体的方式 如果您每个PR有两次提交 如果您确定提交的计数等于2,则可以使用前面的答案:

git日志--最大计数=1--格式=%B头~1
如果您每天没有超过一个PR 如果您每天没有超过一个PR,那么您可以使用

git日志--自=昨天--最大计数=1--格式=%B
它将显示今天第一次提交的评论

git log HEAD~1