我从master创建了一个分支,并在分支上提交了2个提交。
现在我需要将分支合并回主服务器,不知何故主服务器已经更改,我将更多提交合并到主服务器而不仅仅是我的2个提交。
这里最好的解决方案是什么? 我可以将分支(带2次提交)移动到新主服务器中吗?我的意思是,如果我想合并为master,我应该只提交2次提交。我希望我所做的不会影响在同一个存储库上工作的其他人。
我尝试了git rebase,但它与许多提交混淆而不仅仅是这两个。
答案 0 :(得分:1)
如果你不打算将你的分支完全合并到master,但需要在master上提交这两个提交,你可以尝试一个挑选。
参见" How to cherry pick a range of commits and merge into another branch"和git cherry-pick
man page。
您还有其他选项(即使使用git merge
),详见" Is it possible to exclude specific commits when doing a git merge
?"
答案 1 :(得分:0)
x----x-----x---x---master
\
`--x---x--your branch
如果这是您的州,那么这些是您的选择:
无论你做什么,一旦你推动了你的改变,其他人从你推到的同一个存储库拉出来将获得所有必要的提交。
当你试图改变时,那不是Git“搞乱许多提交”。您可能遇到的是需要解决的冲突。 Git只会创建两个新的提交,在master的顶端,而不是很多。
如果你对rebase不满意,我建议你把你的分支合并到主人。这是最安全的操作,因为它不涉及重新计算提交。你仍然会遇到冲突,但无论你选择哪条路线,你都必须解决它们。