我必须 Git 分支 A 和 B。如何检查 A 是否是 B 的祖先,反之亦然?
git merge-base
确实给出了共同的祖先。不过我想知道是否有更好的解决方案。
最佳答案
git merge-base --is-ancestor A B
if [ $? -eq 0 ]
then
# it's an ancestor
else
# it's not an ancestor
fi
这显然是在处理分支指向的提交。 Git 并不像 Clearcase 那样真正跟踪分支谱系,因此很可能您可以先有 A,然后从 B 分支出来,然后由于某些 merge 而最终以 B 作为 A 的祖先.
关于git - 如何在 Git 中检查一个分支是否是另一个分支的祖先,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26103673/