【问题标题】:How to get the deleted files back from a git repo [duplicate]如何从 git repo 中取回已删除的文件 [重复]
【发布时间】:2014-01-15 15:20:43
【问题描述】:

当...时如何取回已删除的文件

  1. 文件是rm ?
  2. 文件是git rm ?
  3. 文件是git rmgit commit ?

【问题讨论】:

    标签: git


    【解决方案1】:

    文件为rm

    如果您知道哪些文件被删除:

    git check -- filename
    

    git checkout-index filename
    

    如果不知道删除了哪些文件或者删除的文件太多:

    git ls-files -d | xargs git checkout --
    

    文件为git rm

    使用reset先回滚索引

    git reset HEAD
    

    并使用上面列出的命令

    git ls-files -d | xargs git checkout-index
    

    文件是git rmgit commit

    如果您知道删除文件的是哪个提交(例如:2ae853),则可以从该提交的上一个提交(2ae853^)签出文件:

    git checkout 2ae853^ -- filename
    

    如果您忘记了删除文件的提交,请使用 rev-list 先查找提交:

    git rev-list -n 1 HEAD -- filename
    

    并使用前面的命令取回文件。

    【讨论】:

      猜你喜欢
      • 2020-11-05
      • 1970-01-01
      • 2015-01-06
      • 2012-05-22
      • 2014-09-06
      • 2014-10-09
      • 2012-07-09
      • 2019-06-17
      • 2014-12-11
      相关资源
      最近更新 更多