我有一个master
分支。和feature_swap
分支。我想继续并行处理这两个分支。我在master
上做了一些更改然后提交了。我想将master
的一些算法更改应用到feature_swap
分支,并查看该版本的工作原理。所以我做了
git pull origin feature_swap
并收到此消息
* branch feature_swap -> FETCH_HEAD
Auto-merging collator.h
Merge made by recursive.
我不想合并。相反,我只想将我在master上应用的一些选定更改放到feature_swap(可能是通过复制粘贴)。如果这符合我的期望,我会用这些更改再次提交该分支。我再一次想要它。
我很害怕,我已经完成了git push
。我可以在Merge branch 'feature_swap'
中看到git log
。我现在需要做些什么才能恢复状态呢?
答案 0 :(得分:2)
考虑到git pull
的定义为git fetch && git merge
,合并并非出乎意料。
您可能希望改为git rebase master
,这会将master
中的提交重新应用到feature_swap
。结合cherry-pick
,您可以指定所需的提交。
从遥控器到fetch
,只需使用git fetch
,它将从遥控器下载提交但不会应用它们。