Git将分支合并到GitLab上的master
我这里有一个基本问题 我有一个分支叫:foo 我已经为“foo”创建了一个合并请求 GitLab表示与master存在合并冲突,因此无法自动合并。这是因为有一个名为foo.txt的文件在主分支(foo)中更改了同一行 我在这里有什么选择?一种选择是:Git将分支合并到GitLab上的master,git,gitlab,git-merge,git-rebase,Git,Gitlab,Git Merge,Git Rebase,我这里有一个基本问题 我有一个分支叫:foo 我已经为“foo”创建了一个合并请求 GitLab表示与master存在合并冲突,因此无法自动合并。这是因为有一个名为foo.txt的文件在主分支(foo)中更改了同一行 我在这里有什么选择?一种选择是: git fetch origin git checkout origin/master git merge --no-ff foo git push origin master 但我不希望开发人员能够直接推式访问主服务器 如何使分支处于合并就绪状
git fetch origin
git checkout origin/master
git merge --no-ff foo
git push origin master
但我不希望开发人员能够直接推式访问主服务器
如何使分支处于合并就绪状态,以便使用GitLab的“自动合并”选项
我可以知道这里推荐的工作流程吗?您可以解决分支foo上的冲突:
git checkout foo
git merge master
# resolve conflicts
git merge --continue
现在您拥有了分支foo上的master的状态。您可以合并到主服务器而不发生任何冲突:
git checkout master
git merge --no-ff foo
我通过将我的分支重新定位到master上解决了冲突 您需要确保
master
是上游/master
中的最新版本,而不是origin/master
确保
git remote-v
确实显示了原始回购协议的URL上游(而不是您的fork)。如果没有,请添加一个:git remote add upstreamhttps://url/original/repo
如果您尚未对master
本身进行任何提交:
git fetch upstream
git checkout master
git reset --hard upstream/master
git checkout yourBranch
git rebase master
git push --force
你为什么不解决这场冲突?然后你可以提交和推送。至少在git中。我通过将我的分支重新定位到master上解决了冲突。推着我的树枝。但仍然显示我的分支在GitLab中不可合并。@user1189332在推送到分支时是否包含--force选项(或-f)?否则,您的重定基础提交就不应该被推送到源。