gpt4 book ai didi

git - 如果你删除一个 git 分支,它的提交会随之消失吗?

转载 作者:太空狗 更新时间:2023-10-29 13:53:24 24 4
gpt4 key购买 nike

如果我创建一个新分支,进行一些提交,然后决定,“哇,我在这里没有做任何好事,”然后删除该分支 (git branch -d branchname)那几个提交也会消失吗?比如,它们是否从我的 git 日志中消失了?

最佳答案

当没有分支引用它们时,提交将不再显示在 git log 中,但它们保留一段时间以防止意外丢失工作。有几个安全层:

  • 提交只有在不再被引用时才会被考虑用于垃圾回收。如果只有一个分支/引用引用了它们,并且您删除了该引用,通常会发生这种情况。
  • 除非配置不同,否则 Git 会保留分支旧状态的日志(“reflog”)。 Reflog 条目最终会过期,受可配置的年龄阈值(实际上是两个:一个用于包含从分支的当前状态可访问的内容的 reflog 条目,一个用于不再从分支访问的内容;默认为后者为 30 天)。在此之前,git gc 会将您的 reflog 条目保留在那里,并且不会删除仍可通过这些 reflog 条目访问的提交。
  • 即使您强行清除您的引用日志,git gc 仍会保留对象,如果它们是在两周前创建的(默认情况下;这是可配置的)。
  • 之后,当您运行 git gc 时,这些对象将被物理删除。

要查看 reflog,请尝试 git log -g SOMEBRANCH

关于git - 如果你删除一个 git 分支,它的提交会随之消失吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23567899/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com