2011-03-08 29 views

回答

2
  1. 如果你想要从之前提交f4l4fe1一个单独的文件,例如,你可以这样做:

    git checkout f4l4fe1^ -- some/file.txt 
    

    (当您添加^在git的一个参考,这意味着)您应该在工作树中找到some/file.txt,但请注意,它也将作为更改提交。

  2. 如果你想只看到工作树,因为它是在上一次提交,你可以检查出的承诺,就好像它是一个分支:

    git checkout f4l4fe1^ 
    

    这使你进入状态称为“分离HEAD”,你不再在某个分支上,所以做出新的提交不会推进任何分支。要回到master,比方说,你只需要做git checkout master

  3. 作为第三种选择,假设你想提取整个目录提交,或者整个子目录,可以使用git archive和管道输出到tar,如解释说:What's the best way to extract a tree from a git repository?