我对merge
和rebase
感到非常困惑。
在主分支上,在点A处,我创建了一个名为mybranch
的分支,切换到该分支并开始纯粹地工作,而其他人继续在master
上工作。
已经过了一段时间。今天,我发现master
已经到达了点B,而我仍然没有完成mybranch
中的部分内容。
但是,我想要所有master
在B之前的更改,但我不想将mybranch
中的任何代码添加到master
中。
然后我所做的就是
- 检出主分支
git rebase mybranch
是的,mybranch
具有从A到B之间的所有master
更改,但是我发现master
也具有我在mybranch
中进行的更改。
现在看来,master
和mybranch
现在是相同的了。
我以为rebase target
的意思是将当前位置放入target
中,即仅基于master
对mybranch
进行变基,但为什么它是双向的呢?
如何实现我的原始目标?