我在Git中工作并希望知道将此Repo的所有更改恢复为特定提交的最佳方法。例如,这里是我的日志是什么样子的例子:恢复以前提交状态的所有更改
commit hash#1
commit hash#2
commit hash#3
commit hash#4
我在我的master
分支,想要恢复到这个回购所做的所有更改提交哈希#4。这意味着我想撤消散列#1,散列#2和散列#3中提交的更改。
我不想重写/删除历史记录,因为这是公共回购。而且我确实想要(重新)提交散列#4,一旦它被恢复。
谢谢!
当我推送到远程主分支时会遇到任何问题吗?远程主服务器当前正在提交hash#1 –
@FillipPeyton no。该命令的最终效果是它会将工作目录重置为commit_hash_4,但是将针对commit_hash_1进行提交。就好像你在其他地方检出了commit_hash_4,并在当前目录中复制粘贴。 – JaredPar
@FillipPeyton你应该看看这个git reset的解释。我经常访问这个页面来刷新我对这个命令是如何工作的知识,以及它是如何在引擎盖下进行的http://git-scm.com/2011/07/11/reset.html – JaredPar