我刚开始使用git。出于某种原因,我必须创建一个包含我的更改的补丁(文件修改+ 4个新文件创建)。我成功地创造了一个补丁。但是在这个过程中,我创建的那些文件被删除了。我又想要那些文件。我怎么能得到它。
答案 0 :(得分:0)
如果提交了这些文件,那就简单了
git checkout -
# or
git checkout -f HEAD
应该足以再次检查工作目录的内容(但它可以覆盖任何当前 - 尚未提交的工作),所以要小心(git stash
首先可能有用)。
答案 1 :(得分: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