我有一个主分支和一个工作branch_1
。我希望'branch_1
完全按照master
'移动'git checkout master
git merge branch_1 # I don't know what is correct...
。所以我想要这样的东西:
branch_1
我做过的事情,但是我收到了很多文件,搞砸了烦人的冲突。所以现在master包含完全相同的{{1}}文件,避免任何冲突,只是覆盖文件。 有什么帮助吗?
答案 0 :(得分:49)
如果两个分支都对文件进行了更改,则会发生冲突。这是一件好事。 让您的分支机构保持最新状态会阻止其中一些 。但总的来说,冲突并不坏。 rebase选项也可以防止其中许多事件发生。
git merge branch_1
如果您在master
,合并将带来您期望的更改。
http://www.kernel.org/pub/software/scm/git/docs/git-merge.html
你也可以
git rebase branch_1
这将从branch_1
进行更改,并将它们附加到master而不进行合并提交。
http://www.kernel.org/pub/software/scm/git/docs/git-rebase.html
答案 1 :(得分:3)
也许你不应该合并?
或代码:
git checkout branch_1
git rebase master
(...)
git checkout master
git rebase branch_1
如果你想让你的变更集更加密集,这也让你有机会将几个提交压缩成一个,并防止你的历史记录中出现这些烦人的合并提交。
答案 2 :(得分:0)
在命令提示符下,您可以输入'git status'。这将为您提供您正在处理的当前分支,该分支当前也称为活动分支。一旦执行git merge branch_1,Git将合并活动分支上的branch_1更改。
否则,您可以尝试使用“ git merge branch_1 master”。
有关Git合并和整体的更多信息:https://medium.com/@thisara.udaya/git-under-the-hood-34dbb807330c