Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.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
如何在GitHub中的某个提交之前恢复文件?_Github - Fatal编程技术网

如何在GitHub中的某个提交之前恢复文件?

如何在GitHub中的某个提交之前恢复文件?,github,Github,如何在GitHub中的某个提交之前恢复文件 例如,如果要在提交之前检索单个文件,可以执行以下操作: git checkout f4l4fe1^ -- some/file.txt (在git中将^添加到ref时,它表示提交的父级。)您应该在工作树中找到some/file.txt,但请注意,它也将作为提交更改进行转移 如果只想查看上一次提交时的工作树,可以将提交作为一个分支签出: git checkout f4l4fe1^ 这将使您进入一种称为“分离头”的状态,在这种状态下,您不再处于某个特定分

如何在GitHub中的某个提交之前恢复文件

  • 例如,如果要在提交之前检索单个文件,可以执行以下操作:

    git checkout f4l4fe1^ -- some/file.txt
    
    (在git中将
    ^
    添加到ref时,它表示提交的父级。)您应该在工作树中找到
    some/file.txt
    ,但请注意,它也将作为提交更改进行转移

  • 如果只想查看上一次提交时的工作树,可以将提交作为一个分支签出:

    git checkout f4l4fe1^
    
    这将使您进入一种称为“分离头”的状态,在这种状态下,您不再处于某个特定分支上,因此进行新的提交不会推进任何分支。要返回到
    master
    ,您只需执行
    git checkout master

  • 作为第三个选项,假设您希望从该提交中提取整个目录或整个子目录,您可以使用
    git archive
    并将输出传输到
    tar
    ,如中所述:


  • 下面两个截然不同的答案表明,您可能希望澄清您希望发生的事情:)