我创建了一个分支来尝试不同的方法并且它有效,所以我想将"Farmcrops"分支合并为"Master"以保持这些变化,但继续"Farmcrops"分支以探索另一种可能性.这样,如果这个最新的改变不起作用,我可以回到"大师",现在包括第一轮改变.
我怎样才能做到这一点?
jub*_*0bs 63
如果我理解正确,你就是从这里开始的
-- o -- o -- o [master]
\
o -- o [Farmcrops]
Run Code Online (Sandbox Code Playgroud)
你不应该Farmcrops直接合并master,因为你冒着破坏代码的风险master,按照惯例,它应该更稳定.相反,签出Farmcrops并合并master到它.
git checkout Farmcrops
git merge master
Run Code Online (Sandbox Code Playgroud)
然后你会得到
-- o -- o -- o [master]
\ \
o -- o -- o [HEAD -> Farmcrops]
Run Code Online (Sandbox Code Playgroud)
运行一些测试; 确保一切按预期工作.然后签出master并合并Farmcrops到它:
git checkout master
git merge Farmcrops
Run Code Online (Sandbox Code Playgroud)
您的回购将如下所示:
-- o -- o -- o
\ \
o -- o -- o [HEAD -> master,Farmcrops]
Run Code Online (Sandbox Code Playgroud)
现在Farmcrops再次检查并继续您的实验,对其进行更多提交等等......
-- o -- o -- o
\ \
o -- o -- o [master]
\
o -- o -- o [HEAD -> Farmcrops]
Run Code Online (Sandbox Code Playgroud)
master如果您的新实验Farmcrops不能很好地完成,您可以随时使用(现在包含"第一轮更改").
Joë*_*min 30
这是您正在寻找的过程:
git checkout mastergit merge Farmcropsgit push origin mastergit branch -d Farmcropsgit checkout mastergit checkout -b FarmcropsFarmcrops...分支只是指针,创建/删除分支非常容易,如果Farmcrops没有将分支推送到远程存储库,则绝对不会依赖它.您可以在合并后将其删除,然后从主服务器重新创建它.
希望这会帮助你.