Git重新创建以前的状态



我在GitHub上有一个git存储库。我的最后三次提交都是更改,现在我想回滚,但将它们保留在git历史中

Master-Branch:
- HEAD: 3. Change; removed one of added files, added new line in main.js
- -1  : 2. Change; removed line in one of added files
- -2  : 1. Change; Added two files
- -3  : Stuff <-- This is the status of the project that I want
  • 现在,我尝试了$ git revert <COMMIT-SHA>,但这只重置了特定提交的更改,并忽略了当时发生的所有其他提交。

  • $git reset <COMMIT-SHA>丢弃了我所做的所有更改。

有没有一种简单的方法可以重新创建特定提交的状态,将其作为新提交推送,并有效地获得以前的状态,而无需手动进行所有更改?

正如我在";还原以git"为单位的提交范围;,你需要的是

git revert commit3..HEAD

它将在提交3之后恢复所有,直到HEAD提交,使一个新的提交恢复以前的提交(commit3除外(

因此,这与其说是恢复多个提交,不如说是恢复范围的提交。

Kinda作品:

$ git revert --no-commit <COMMIT SHA>..

使我处于git恢复模式,逐个更改,这样我就可以对发生的每个更改进行提交

最新更新