我看到了许多使用Git丢弃更改/恢复到先前提交的不同方法。通常情况下,我可以找出适合我的情况的方法,但在这个过程中,我对不同的方法感到很困惑。最近,我试图撤消一些文件重命名,无论我如何尝试
我正在寻找哪种方法以及为什么要使用它的澄清。以下是我对一些方法的理解。我知道答案可能非常具体化,但我想尝试整理哪些情况需要哪些方法。
1)
来源帖子:
git checkout
旧版本的文件,我仍然无法找回我的旧文件。我正在寻找哪种方法以及为什么要使用它的澄清。以下是我对一些方法的理解。我知道答案可能非常具体化,但我想尝试整理哪些情况需要哪些方法。
1)
git checkout -- .
- 用于检出文件的最新版本,将覆盖旧文件,但不会影响已删除、重命名或新文件。
git stash save --keep-index
然后 git stash drop
- 储藏未提交的文件,然后完全删除它们。如果您已经提交了要保留的更改和未提交/未暂存的更改,则是一个好方法丢弃它们。
git reset --hard
- 抹掉自上次提交以来的所有内容,包括文件重命名、删除和添加。
git revert
来代替上述命令。来源帖子:
-u
除了已跟踪的文件外,还会存储未跟踪的文件。这使它的行为类似于重置。 - Adam Dymitruk