不知道,如何用简短的标题来描述......这是我的问题。
我们有两个分支功能-100,功能-150和开发分支。
我正在使用150,需要来自branch-100的功能。 Branch-100,有些弱点,从未被合并开发。 一个人,通过樱桃挑选从100改变发展。 所以这个想法,只是"更新"我的150与当前的发展,以获得这个珍贵的功能。
我试过我的分支
但是所有这些操作都会覆盖我在分支上的更改。 还有一个信息,我对150的更改已经在远程/ 150上拉。
任何想法,如何处理?
答案 0 :(得分:3)
还有一个信息,我对150的更改已经在远程/ 150上拉。
这意味着在开发之上重新定位feature-150
不是一个好主意,因为它会重写该分支的历史。
合并应该是正确的选择:
git checkout feature-150
git merge develop
这不应该覆盖您的更改。如果是,请尝试git merge
中的合并策略特定选项ours
:如果发生冲突,将选择您的更改。
git merge -X ours develop
如果仍然失败,则OP codesnippet点(in the comments)为解决方法:
我现在合并了,我的更改被覆盖了,之后我会使用cherry-pick为我的树提交“强制覆盖”我的更改。
也许有其他/更好的方法来实现这一点,但这是我的解决方案。
答案 1 :(得分:0)
你是什么意思"覆盖我的变化"?
在做任何其他事情之前提交您的更改!这样它们就会被存储为提交,git就会知道它们。
之后合并和rebase都应该没问题。