我有多个分支从主服务器分支(每个分支在一个单独的子目录中).
在完成修补程序的测试之前,我想在Branch1中已经有代码,所以我可以继续开发修复程序.
(但是因为我对git的经验并不是那么多,所以我第一次开始在第三个分支中进行合并,特别是在我弄乱了Branch1或Branch2之前就已经陷入困境)
在我的第3分支中,我首先尝试了以下内容:
git merge feature/Branch1
Run Code Online (Sandbox Code Playgroud)
但是这给出了以下错误:
fatal: 'feature/Branch1' does not point to a commit
Run Code Online (Sandbox Code Playgroud)
我接下来在我的Branch1中做了一个提交-a并再次尝试,但它一直给出同样的错误.
我究竟做错了什么?我应该怎么做才能合并代码 - 在这种情况下 - Branch1与Branch3?
gab*_*bra 173
首先,结帐到您的Branch3:
git checkout Branch3
Run Code Online (Sandbox Code Playgroud)
然后合并Branch1:
git merge Branch1
Run Code Online (Sandbox Code Playgroud)
如果你想在Branch2上更新Branch1的提交,你可能正在寻找 git rebase
git checkout Branch2
git rebase Branch1
Run Code Online (Sandbox Code Playgroud)
这将使用Branch1的最新更新更新您的Branch2.
小智 110
您可以使用这些命令:
git checkout <the branch you want to merge into>
git merge <the branch you want contents from>
Run Code Online (Sandbox Code Playgroud)
And*_*per 35
git checkout [branchYouWantToReceiveBranch] - 结帐分行您要接收分行git merge [branchYouWantToMergeIntoBranch]Mic*_*ter 19
将一个分支合并到另一个分支,例如将“feature_x”分支合并到“master”分支:
git checkout master
git merge feature_x
这个页面是几个搜索引擎在寻找“git merge one branch into another”时的第一个结果。但是,原始问题比标题所暗示的更具体和特殊。
它也比主题和搜索表达式更复杂。因此,对于大多数访问者而言,这是一个最小但具有解释性的答案。
以防万一你到达这里是因为你从 Github 复制了一个分支名称,请注意远程分支不会自动也是本地分支,因此合并将不起作用并给出“我们不能合并的东西”错误。
在这种情况下,您有两个选择:
git checkout [branchYouWantToMergeInto]
git merge origin/[branchYouWantToMerge]
Run Code Online (Sandbox Code Playgroud)
或者
# this creates a local branch
git checkout [branchYouWantToMerge]
git checkout [branchYouWantToMergeInto]
git merge [branchYouWantToMerge]
Run Code Online (Sandbox Code Playgroud)