2

我刚刚开始使用 git。出于某种原因,我必须创建一个更改补丁,其中包括(文件修改 + 4 个新文件创建)。我成功地创建了一个补丁。但是在这个过程中,我创建的那些文件是如何被删除的。我又想要那些文件了。我怎么能得到那个。

4

2 回答 2

0

你需要使用补丁吗?假设您将它们发送到哪里,它们也在使用 git,您可以只向它们发送一个 git 包。看看这里的git bundle命令:http: //www.kernel.org/pub/software/scm/git/docs/git-bundle.html

如果您通过获取 的输出为新文件生成补丁git diff,您将无法发出任何 git 命令来取回它们,因为它们从来不是 git 跟踪的任何内容的一部分。只需删除您制作的补丁内容即可重新创建文件。

如果您在将新文件提交到历史记录后生成了补丁,您可以通过以下任何一种方法恢复到最新提交的原始状态:

git stash 
git checkout -- .
git reset --hard

执行此操作时请注意您没有现有的工作。Stash 是所有这些命令中最安全的命令之一,因为它将您的修改状态存储在历史参考中。如果您破坏了某些东西,您可以使用以下命令将其取回stash pop

于 2012-07-12T07:46:18.197 回答
0

如果这些文件被提交,一个简单的

git checkout -
# or
git checkout -f HEAD

应该足以再次检查工作目录的内容(但它可以覆盖任何当前 - 尚未提交的 - 工作),所以要小心(git stash首先可能有用)。

于 2012-07-12T06:30:01.463 回答