This page说以下内容:
最终,Git将决定是时候运行垃圾收集了。 (您可以使用git gc自行触发此过程。)从 每个分支和每个标记,Git都会回顾图表,构建 它可以达到的每个提交的列表。一旦它到达结束 每个路径,它删除它没有访问的所有提交。
它是否寻找带注释或轻量级的标签?
我正在没有分支机构进行标记提交,只是好奇,如果我的提交有可能被垃圾收集。
答案 0 :(得分:1)
引用的参考文献确实说每个标记,这已经意味着要考虑轻量级和带注释的标记。权威来源是git-gc
man page,其声明如下:
git gc 非常努力地不删除存储库中任何位置引用的对象。特别是,它不仅会保留当前分支和标记集引用的对象,还会保留由refs / original中 git filter-branch 保存的索引,远程跟踪分支,引用引用的对象。 /或reflogs(可能引用后来修改或重绕的分支中的提交)。如果您希望某些对象被删除而它们不是,请检查所有这些位置,并确定在您的情况下删除这些引用是否有意义。
换句话说,git
在谨慎方面非常谨慎,并且避免删除可能被认为有用的任何。删除通过用户自己创建的标记可到达的对象将构成极其严重的数据丢失错误。