当我做一个git cherry-pick
并且发生冲突时,git 不会进行提交并允许我解决冲突。
即使没有冲突,有没有办法强制停止?
我想这样做的原因是我有一个想要挑选的更改,但我不想要它更改的所有文件。在提交之前停止它允许我从提交中删除文件,然后在没有它的情况下执行git cherry-pick --continue
git cherry-pick --no-commit
做了一些类似于我想要的事情,但不完全是。
如果你做了git cherry-pick --no-commit
然后git commit
结果与你做git cherry-pick
,解决冲突然后做git cherry-pick --continue
也许您正在寻找git cherry-pick --no-commit
-n --不提交
通常,该命令会自动创建一系列提交。此标志应用必要的更改来挑选每个命名 提交到你的工作树和索引,而不进行任何提交。 此外,使用此选项时,索引不必 匹配 HEAD 提交。樱桃采摘是在开始时完成的 索引的状态。
当连续挑选多个提交到索引的效果时,这很有用。
从这里。
这不是一个直接的答案,但您可以在成功挑选没有合并冲突后尝试进行软重置:
git reset --soft HEAD~1
这会将来自挑选合并的更改集放入阶段,并将您的工作目录与这些相同的更改同步。 从那里,你可以四处闲逛,进行你需要的任何其他更改,然后重新提交。
我在这里假设您正在挑选一个提交。