我有一堆分支,每个分支都有不同的功能。通常我会有一些额外的分支“not_master”,其中包含 master+feature A,如下所示:
(not_master) a--b--c--d--e---M--x--y--z
(feature A) --h--i--j-/
有时我想取消合并功能 A,但将提交保留x,y,z
在“not_master”中。
换句话说,我想要这样:
(not_master) a--b--c--d--e--x--y--z
我看到我可以做一个git revert -m 1 M
将在末尾添加一个提交以恢复我的更改,但我真的不想这样做,因为这些提交尚未发布,所以添加更多提交会使历史更难阅读.
其他人建议只做 a git reset --hard M
,但这会转储x,y,z
. 我只是在想这个完全错误的方式吗?我应该只git reset --hard M
挑选x,y,z吗?