git 单个文件回滚

56 阅读1分钟
git 单个文件回滚

在 Git 中,如果你想要回滚单个文件到之前的某个版本,你可以使用 git checkoutgit restore 命令(后者在 Git 2.23 版本之后推荐使用)。以下是两种方法的步骤:

使用 git checkout(适用于 Git 2.22 及之前的版本)
  1. 首先,你需要确定你想要回滚到的提交的哈希值。你可以使用 git log 查看提交历史:
    git log -- <file_path>
    
    替换 <file_path> 为你想要回滚的文件的路径。
  2. 找到你想要回滚到的提交的哈希值后,使用以下命令:
    git checkout <commit_hash> -- <file_path>
    
    替换 <commit_hash> 为相应的提交哈希值,<file_path> 为你的文件路径。
  3. 这会将文件回滚到指定的提交状态。如果你想要将这个更改提交到仓库,你需要使用 git addgit commit
    git add <file_path>
    git commit -m "Revert <file_path> to <commit_hash>"
    
使用 git restore(适用于 Git 2.23 及之后的版本)
  1. 同样,首先确定你想要回滚到的提交的哈希值。
  2. 使用 git restore 命令将文件回滚到指定的提交状态:
    git restore --source=<commit_hash> -- <file_path>
    
    替换 <commit_hash> 为相应的提交哈希值,<file_path> 为你的文件路径。
  3. 这个命令会将文件恢复到工作目录中,但不会自动添加到暂存区。你需要手动使用 git add 来暂存这个更改:
    git add <file_path>
    
  4. 然后,你可以使用 git commit 提交这个更改:
    git commit -m "Revert <file_path> to <commit_hash>"
    

请注意,这些操作会改变工作目录中的文件,并且如果你没有将更改提交到仓库,这些更改可能会丢失。确保在执行这些操作之前,你的工作目录是干净的,或者你已经提交了所有重要的更改。