首页 > 解决方案 > 如何像快照一样在一个分支中 git 回滚/重做工作字典文件?

问题描述

我只有一个 git 分支(master),也是一个私有仓库(仅供我自己使用)。如何轻松回滚/重做我的工作字典文件,如快照管理?

例如:

  1. 我第一次提交,字典中只有 1.txt
  2. 我第二次提交,在字典中添加 2.txt
  3. 我第三次提交,在字典中添加 3.txt

现在的问题是:

  1. 我应该为 git 发出什么命令来恢复我的工作字典只包含 1.txt 文件?
  2. 在上述步骤 1 之后,我应该再次发出什么 git 命令来恢复我的工作字典,让它再次有 3 个文件(1.txt、2.txt、3.txt)?

基本上我想把它当作工作字典的快照管理,以便在不同的提交之间轻松切换。用git可以吗?

标签: gitrollbackgit-commitsnapshotgit-checkout

解决方案


  1. 创建一个新分支:git branch my_branch

  2. 切换到这个分支:git checkout my_branch
    (1+2一步git checkout -b my_branch:)

  3. 将分支重置为倒数第三次提交:git reset HEAD^^ --hard
    ('^' 的计数决定了您返回的提交次数)

不,您可以通过分别检查“my_branch”或“master”来切换状态。


推荐阅读