假设我有一个 blob 的 SHA。我可以去 git show 看看 blob 的内容。是否可以获得包含该 blob 的所有提交的列表?
问问题
1516 次
2 回答
11
以下 scriptlet 应该可以解决问题:
#!/bin/sh
blob=deadbeefdeadbeefdeadbeefdeadbeef
git rev-list --all |
while read commit; do
if git ls-tree -r $commit | grep -q $blob; then
echo $commit
fi
done
于 2012-05-22T21:53:34.157 回答
1
也许有点晚了,但git show <abbrev-sha1>
会显示该 blob 的内容等。同样git cat-file blob <abbrev-sha1>
,使用git cat-file -t <abbrev-sha1>
它来检查它是一个 blob。
获取包含它的第一个(或最后一个)提交似乎并不容易(例如从补丁的差异index
行确定该补丁的来源)
于 2016-09-17T13:57:49.287 回答