我可以使用什么命令来打印HEAD的提交id ?

这是我用手做的:

$ cat .git/HEAD
ref: refs/heads/v3.3
$ cat .git/refs/heads/v3.3
6050732e725c68b83c35c873ff8808dff1c406e1

但是我需要一个脚本,可以可靠地将一些命令的输出管道到一个文本文件,这样文本文件就包含了HEAD的提交id(没有更多或更少,而不仅仅是一个ref)。有人能帮忙吗?


当前回答

玩Bash:

git show HEAD | sed -n 1p | cut -d " " -f 2

其他回答

你可以指定git日志选项,只显示最后一次提交,-1,以及只包含提交ID的格式,如下所示:

git log -1——format=%H

如果你更喜欢缩短提交ID:

Git log -1——format=%h

你可以使用

git log -g branchname

查看格式类似于git日志输出和提交id的git reflog信息。

git log -1

仅用于提交id

git log | head -n 1 

您可以使用该命令

$ git rev-list HEAD

你也可以使用head Unix命令来显示最近的n个head提交

$ git rev-list HEAD | HEAD -n

git rev-parse——abbrev-ref HEAD