如何找到所有分支中的提交?在我的情况下,它有20多个分支,而我只有一部分提交ID。我只知道它是开始或结束提交ID的一部分。所有分支(不包括一个分支)都是远程的。
答案 0 :(得分:2)
我认为您正在寻找的是--contains
组合选项,可以使用rev-list
从修订列表中查找提交
git branch -a --contains $(git rev-list --all | grep <your-partial-commit-id>)
它首先使用带有
的partial查找完整的提交ID。git rev-list --all | grep <your-partial-commit-id>
然后,您使用-a选项(对于所有分支)传递完整的提交ID以在所有分支中进行搜索,并将提交ID传递给--contains
参数
git branch -a --contains <your-full-commit-id>
附加说明:在您的情况下,这是不正确的,但是如果知道部分ID是完整提交ID(任意长度)的开始部分,则可以直接将其传递给git branch --contains
而不从rev-list
命令
答案 1 :(得分:0)
答案 2 :(得分:0)
git rev-list --all | grep <your-partial-sha1>
...将输出存储库中SHA-1匹配的所有提交。