1

假设我们有一个 git 提交历史,如下所示:

ZZ [起源/主人] A -> B -> C -> D -> E [主人]

我们想:

  • 将历史倒回之前A
  • 保留工作目录E
  • 将 in 的所有变更集捆绑A..E到一个提交中。
  • 将结果推送到远程。

结果应如下所示:

ZZ -> XX [master][origin/master]

其中 XX 是包含先前提交 A..E 更改的提交

4

1 回答 1

3

你可以试试:

git reset --hard E
git reset --soft ZZ
git commit 'comment'
git push orgin master

- 柔软的

完全不触及索引文件或工作树(但将头部重置为 ,就像所有模式一样)。这会留下所有更改的文件“要提交的更改”,就像 git status 所说的那样。

于 2013-03-20T02:56:48.527 回答