如何在签出旧提交后添加未来提交的更改

how to add changes from future commits after checking out to older commit

我在一个分支上有一组提交,如下所示: [head]A->B->C->D 并会签出以提交 C,但希望将从 CB 所做的更改视为未提交的更改。我想知道我该怎么做。我会先做这样的事情:

谢谢。

此答案假定您希望最终得到:

B -> C -> D

首先从 C -> D 开始并查看 B 的更改。我们可以尝试以下方法:

git reset --hard HEAD~1  # takes us back to B -> C -> D
git reset --soft HEAD~1  # back to C -> D with B's changes being staged

一旦您检查了分阶段更改并从上面的第二步提交,您将得到 B -> C -> D