Git合并分支成主

Trt*_*Trt 43 git git-merge git-branch

我有一个主分支和一个工作branch_1.我想branch_1完全按原样"移动" master.所以我想要这样的东西:

git checkout master
git merge branch_1 # I don't know what is correct...
Run Code Online (Sandbox Code Playgroud)

我做的事情,但我有大量的文件搞砸了恼人的冲突.所以现在master包含完全相同的文件,branch_1避免任何冲突,只是覆盖文件.有帮助吗?

Sch*_*eis 51

如果两个分支都对文件进行了更改,则会发生冲突.这是一件好事. 让您的分支机构保持最新状态将阻止其中的一些分支机构 .但总的来说,冲突并不坏.rebase选项还可以防止其中许多事件发生.

git merge branch_1
Run Code Online (Sandbox Code Playgroud)

如果您打开master,合并将带来您期望的更改.

http://www.kernel.org/pub/software/scm/git/docs/git-merge.html

你也可以

git rebase branch_1
Run Code Online (Sandbox Code Playgroud)

这将接受更改branch_1并将其附加到master而不进行合并提交.

http://www.kernel.org/pub/software/scm/git/docs/git-rebase.html


sja*_*jas 5

也许你不应该合并?

  1. 结账分支_1
  2. Rebase master 更改为branch_1
  3. 修复测试代码后可能出现的任何错误
  4. 结帐大师
  5. Rebasebranch_1 更改为 master

或者在代码中:

git checkout branch_1
git rebase master
(...)
git checkout master
git rebase branch_1
Run Code Online (Sandbox Code Playgroud)

如果您想让变更集更加密集,这也使您有机会将多个提交压缩为一个提交,并防止历史记录中出现这些烦人的合并提交。