在Git中连接分支

Vic*_*tor 2 git gitk

当我使用gitk检查我的分支时,我发现了以下内容:

Git连接分支机构

我创建pretty_url,切换到它,工作的东西,提交,然后切换到master分支(这是干净的),然后运行git merge pretty_url,并检查gitk,并找到了这个.

我确定这不合适,可能master不干净.我怎样才能解决这个问题?

Car*_*rum 6

这正是你应该从合并中得到的.如果你想要改变和快进,你可以做到这一点而不是直线.

例:

在合并之前,您遇到了这种情况:

之前的照片

也就是历史masterbranch分歧.他们共同h拥有共同的祖先.合并时(通过git merge branch`master),你最终得到一个有两个父母的提交来统一该历史记录:

合并图片

如果这不是您想要的,您可以撤消它并通过执行以下操作获得您想要的内容:

git reset --hard HEAD@{1}  # or whatever commit matches 'j' to undo the merge
git checkout branch
git rebase master          # incorporate 'i' and 'j' commits into 'branch'
git checkout master
git merge branch           # this merge will be a fast-forward now
Run Code Online (Sandbox Code Playgroud)

这将为您提供您似乎正在寻找的重新线性历史:

快进照片