Bash 如何撤消git垃圾收集器命令?我运行git gc

Bash 如何撤消git垃圾收集器命令?我运行git gc,bash,git,object,github,gitlab,Bash,Git,Object,Github,Gitlab,我跑 git gc 了解git垃圾收集器的总体工作原理 但当我运行它时,.git/objects中显示为blob、commits和tree的15个对象就不见了。 1.如何撤销它并恢复那些git对象? 2.当我运行ls时,它会显示所有文件,但状态如何?他们现在在哪里?它们位于工作目录、暂存或修改区域中。为什么我看不见他们 如果我缺少一些用例,请帮助我并提出建议。 如何撤销它并恢复那些git对象 我看到这已经在评论中得到了回答,归功于@Sven 当我运行ls时,它会显示所有文件,但状态如何?他们

我跑
git gc
了解git垃圾收集器的总体工作原理

但当我运行它时,.git/objects中显示为blob、commits和tree的15个对象就不见了。 1.如何撤销它并恢复那些git对象? 2.当我运行
ls
时,它会显示所有文件,但状态如何?他们现在在哪里?它们位于工作目录、暂存或修改区域中。为什么我看不见他们

如果我缺少一些用例,请帮助我并提出建议。

  • 如何撤销它并恢复那些git对象
  • 我看到这已经在评论中得到了回答,归功于@Sven

  • 当我运行
    ls
    时,它会显示所有文件,但状态如何?他们现在在哪里?它们位于工作目录、暂存或修改区域中。为什么我看不见他们
  • 好吧,假设您谈论的是“linux”
    ls
    (即显示所有文件的那一个),要查看git回购的当前状态,请运行
    git status
    ,它会告诉您是否有任何文件在暂存区域中。这还将告诉您哪些文件未被跟踪,因此您的目录(工作文件夹中存在的内容)减去未跟踪的文件将为您提供工作目录


    最好将对象打包到
    pack
    文件中,这样可以提高性能。为什么要撤消该命令?它似乎已按预期工作。您可以使用
    git unpack objects
    再次解包包包文件:在这种情况下,您可以指导性能如何提高吗?包文件仅存储文件不同版本之间的差异。这减少了大多数操作需要从磁盘读取的数据量。Diff特别从增量压缩中获益。