从git提交中提取树sha1

从git提交中提取树sha1,git,shell,Git,Shell,我正在从git提交(通常是从分支提示)中提取顶级树的sha1 是否有一种比 git cat文件-p master | egrep-e“^tree[a-f0-9]{40}$”| head-1 | cut-c6-45 这里是master分支的顶层树。这需要能够在myGit和普通Linux之间移植。对象sha1值将分配给变量以供进一步处理 在git cat文件之后需要通过三个额外的命令,这感觉太过分了。那么git checkout master后面跟着git rev parse HEAD^{tree}

我正在从git提交(通常是从分支提示)中提取顶级树的sha1

是否有一种比

git cat文件-p master | egrep-e“^tree[a-f0-9]{40}$”| head-1 | cut-c6-45

这里是
master
分支的顶层树。这需要能够在myGit和普通Linux之间移植。对象sha1值将分配给变量以供进一步处理


git cat文件
之后需要通过三个额外的命令,这感觉太过分了。

那么
git checkout master
后面跟着
git rev parse HEAD^{tree}

我应该提到的目的是避免签出该树,以便时间戳保持不变并消除I/O。也就是说,我需要检查
git rev parse master^{tree}
等。是的,我需要的是
git rev parse^{tree}
命令,其中还可以是commit sha1等。