我需要为特定的git分支提取缩写的提交名称.这些通常是7位十六进制数字,并且它们被某些系统(包括Heroku的COMMIT_HASH环境变量)用于标识特定提交.
获得缩写提交名称有几种丑陋的方法,包括:
$ git log -1 --oneline | awk '{ print $1 }'
d4377e3
$ git describe --always --match ''
d4377e3
Run Code Online (Sandbox Code Playgroud)
是否有更清洁的方法来获得这个价值?
好问题.我相信正在寻找git-rev-parse,一个低级别的git命令.
[jason@star Data]$ git-rev-parse --short github/master
8b81a38
Run Code Online (Sandbox Code Playgroud)
此外,如果您想要在当前分支上进行最新提交,只需将其HEAD作为参数传递.
[jason@star Data]$ git-rev-parse --short HEAD
8b81a38
Run Code Online (Sandbox Code Playgroud)