我有一个开发分支,我想看看“分支创建”和现在之间的区别。实际上,我更感兴趣的是创建分支之后的提交,这更像是“分支创建”+1。
我知道我可以在 Git 命令中使用 HEAD 和 HEAD~1 等简写。我不知道如何指定“分支创建”。
Git 中“分支创建”和“分支创建”+1 的简写是什么?
最佳答案
你的问题有一个根本问题:“分支创建”到底是什么? “分支”只是指向提交的指针,它本身具有对父提交的引用,父提交又具有对父提交的引用,依此类推。
如果我像这样绘制我的 git 历史记录:
a -> b -> c -> d (master)
\
-> x -> y (devbranch)
那么你可能会说答案是显而易见的。但事实是,历史也可以这样描绘:
a -> b -> x -> y (devbranch)
\
-> c -> d
这是同样的事情。没有具体“创建”分支;它只是应用于提交链顶端的标签。
您也许可以使用merge-base
命令获得您正在寻找的答案,例如:
git checkout devbranch
git merge-base master HEAD
这将找到“在三向 merge 中使用的两个提交之间的最佳共同祖先”,在简单的情况下,这可能是两个分支分歧的点。
关于git - "branch creation"的简写是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39240283/