Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows Git:如何将曾经删除的所有文件复制到某个目录?_Windows_Git_Restore - Fatal编程技术网

Windows Git:如何将曾经删除的所有文件复制到某个目录?

Windows Git:如何将曾经删除的所有文件复制到某个目录?,windows,git,restore,Windows,Git,Restore,我想获取所有曾经被删除的文件,并将它们复制到另一个目录X 通过执行git log--all--pretty=format:“--name only | sort-u,我得到了一个删除的所有文件的列表,但这是我所能做到的 注: 我不想对我的工作副本做任何更改。我想将删除的文件恢复到目录X,X与我的repo位于完全不同的位置 我希望还原的文件已提交、删除,并且已提交删除。所以git对它们进行了备份 如果有帮助的话,我正试图找到一个我曾经添加的图像。我既没有文件名,也没有添加/删除文件的提交。因此,

我想获取所有曾经被删除的文件,并将它们复制到另一个目录
X

通过执行git log--all--pretty=format:“--name only | sort-u,我得到了一个删除的所有文件的列表,但这是我所能做到的

注:

  • 我不想对我的工作副本做任何更改。我想将删除的文件恢复到目录
    X
    X
    与我的repo位于完全不同的位置
  • 我希望还原的文件已提交、删除,并且已提交删除。所以git对它们进行了备份
  • 如果有帮助的话,我正试图找到一个我曾经添加的图像。我既没有文件名,也没有添加/删除文件的提交。因此,我的计划是将所有删除的文件恢复到另一个目录,然后手动检查图像(其中约50个)
  • 我是个新手,在windows上使用Git

谢谢:)

要查找已删除的文件:
git log--diff filter=D--summary
。解析该文件的输出以获取
commitId
和文件名,然后从
commitId^
获取该版本的文件,并复制到dir(
git show hash^:fileName>copyOfFileName
),名为copyOfFileName的文件将包含您的文件内容。使用git日志中显示的文件名的完整路径。

查找已删除的文件:
git log--diff filter=D--summary
。解析该文件的输出以获取
commitId
和文件名,然后从
commitId^
获取该版本的文件,并复制到dir(
git show hash^:fileName>copyOfFileName
),名为copyOfFileName的文件将包含您的文件内容。使用git日志中显示的文件名的完整路径。

我很高兴您能响应。问题是,我已经知道该怎么做了,但我不知道怎么做。如果你也能给我命令,我将不胜感激。命令就在回复中。你有没有尝试过输入它们(git log--diff filter=D--summary and git show hash^:fileName)?这就是我尝试的:(太长了,无法在这里发布。)如果我误解了你,我道歉。你能告诉我更多的细节吗?你能试一下完整的文件名路径吗?anki/MainProfile/collection.media/latex-0eb5db190634622e42db3df19c9b05a1fb9a780d.png?我已经试过了,不是吗?(尝试了文件名和相对路径名)。我刚刚还尝试了完整的路径名,但得到了相同的错误。我很高兴您的响应。问题是,我已经知道该怎么做了,但我不知道怎么做。如果你也能给我命令,我将不胜感激。命令就在回复中。你有没有尝试过输入它们(git log--diff filter=D--summary and git show hash^:fileName)?这就是我尝试的:(太长了,无法在这里发布。)如果我误解了你,我道歉。你能告诉我更多的细节吗?你能试一下完整的文件名路径吗?anki/MainProfile/collection.media/latex-0eb5db190634622e42db3df19c9b05a1fb9a780d.png?我已经试过了,不是吗?(尝试了文件名和相对路径名)。我还尝试了完整的路径名,但得到了相同的错误。