我正在寻找从git提交中提取顶级树的sha1,通常来自分支提示。
是否有比
更有效的便携式命令序列 git cat-file -p master | egrep -e "^tree [a-f0-9]{40}$" | head -1 | cut -c6-45
?
这是master
分支的顶级树。这需要在Mysgit以及常规Linux上可移植。对象sha1值将分配给变量以供进一步处理。
git cat-file
之后需要管理三个额外的命令确实感觉过度。
答案 0 :(得分:2)
git checkout master
后跟git rev-parse HEAD^{tree}
怎么样?