git - "branch creation"的简写是什么?

标签 git

我有一个开发分支,我想看看“分支创建”和现在之间的区别。实际上,我更感兴趣的是创建分支之后的提交,这更像是“分支创建”+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/

相关文章:

git - 为什么git认为这是cherry pick之后的冲突?

linux - git push origin master 请求远程服务器密码

Git 属性(涂抹、干净)分布在 repo 协议(protocol)上

asp.net-mvc - 在 github 中避免 ASP.NET 密码?

python - 为什么 Github API 允许我访问但不列出私有(private)仓库?

git - Visual Studio 项目的 .gitignore 不起作用

git ls-tree db/*.rb 不工作

linux - Jenkins git fetch 返回状态码 143

Git 推送到谷歌云计算引擎

Git:接收电子邮件后 Hook 以显示 html 格式的颜色差异?