我尝试撤消对特定文件的本地更改。没有任何承诺。
当我想还原所有更改时,我可以执行git revert --reset HEAD
。但是,在这种情况下,我不想还原所有文件的所有更改。
即使在阅读git-revert(3)
手册页之后,我还不清楚或明白如何还原文件:
NAME
git-revert - Revert some existing commits
SYNOPSIS
git revert [--[no-]edit] [-n] [-m parent-number] [-s] <commit>...
git revert --continue
git revert --quit
git revert --abort
...
这与How to revert a specific file in a old commit on git类似,但未执行任何提交。与OP不同,谁想要回到任意提交,我只想让文件返回到MASTER的副本。
在SVN下,我只会删除相关文件,然后执行svn update
。
如何将更改还原为单个文件?
答案 0 :(得分:252)
你不想要git revert
。这撤消了之前的提交。您希望git checkout
从master获取该文件的git版本。
git checkout -- filename.txt
通常,当您想对单个文件执行git操作时,请使用-- filename
。