我可以使用什么命令来打印HEAD的提交id ?
这是我用手做的:
$ cat .git/HEAD
ref: refs/heads/v3.3
$ cat .git/refs/heads/v3.3
6050732e725c68b83c35c873ff8808dff1c406e1
但是我需要一个脚本,可以可靠地将一些命令的输出管道到一个文本文件,这样文本文件就包含了HEAD的提交id(没有更多或更少,而不仅仅是一个ref)。有人能帮忙吗?
我可以使用什么命令来打印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