git:合并两个分支:什么是正确的步骤?

对于我的一个项目,我通常需要从开发分支创建新分支,当我完成我的工作(在新分支)时,我需要将新分支合并到开发分支中。 这是我做的步骤:

 git clone –b development <git repository url>
 git branch new-branch
 git checkout new-branch
 git push --all

我在新分支中执行我的代码,并在新分支中执行/推送代码。

现在我需要将新分支合并到开发中(请注意,在我完成新分支任务时,开发分支会得到其他开发人员的进一步提交)。 我的问题是将new-branch合并到development-branch并将其推送到远程存储库的正确方法是什么?

谢谢


我更喜欢将功能分支放在develop(ment)之上,并在之后丢弃它。

git checkout development
git merge --squash new-branch
git branch -D new-branch
git push origin :new-branch

这样您将保持包含整个功能的单个提交。


如果其他人正在推动'发展',那么正如你可能已经看到的那样,由于'非快速'警告,你的推动可能会失败。 因此,正确的做法是首先从开发,构建和测试中提取变更,然后再推回到开发。 这里是你的工作流程:

$ git clone -b development <development repository>  <devdir>; cd <devdir>
$ git checkout -b new-branch
$ <edit, build test>
$ git add ...
$ git commit ...
# repeat above 3
#
# now you want to get your changes back on development
$ git pull origin development
$ <build, test - to ensure new-branch works w/ latest development>
$ git push origin new-branch:development

git checkout master
git merge dev
git commit -m 'merged branches'
链接地址: http://www.djcxy.com/p/49307.html

上一篇: git: merge two branches: what are the correct steps?

下一篇: How do I merge a branch into a master in github?