是否可以防止git立即删除已删除分支的reflog?

是否可以防止git立即删除已删除分支的reflog?,git,Git,git branch-d删除该分支及其reflog(在.git/logs/refs/heads/中)。是的,您可能可以从HEAD的reflog恢复分支,但是为什么要立即丢弃分支的reflog呢?当然更明智的做法是把它保留下来,以后再做。这也为取消删除分支提供了一种更简单的方法(无需通过HEAD的reflog进行搜索) 这是个好主意吗 假设1的答案不是“不,这是一个可怕的想法”,那么这可以通过配置选项(我没有找到任何选项)或通过一些管道命令的组合来实现吗 我不认为这是一个坏主意,reflog条目在

git branch-d
删除该分支及其reflog(在
.git/logs/refs/heads/
中)。是的,您可能可以从
HEAD
的reflog恢复分支,但是为什么要立即丢弃分支的reflog呢?当然更明智的做法是把它保留下来,以后再做。这也为取消删除分支提供了一种更简单的方法(无需通过
HEAD
的reflog进行搜索)

  • 这是个好主意吗

  • 假设1的答案不是“不,这是一个可怕的想法”,那么这可以通过配置选项(我没有找到任何选项)或通过一些管道命令的组合来实现吗


  • 我不认为这是一个坏主意,reflog条目在通常的过期之后会自动消失,所以我不确定为什么
    git branch-d
    会删除reflog


    我验证了
    git update ref-d
    不会删除reflog,因此可以通过管道命令实现所需的效果。在调用
    git update ref
    之前,编写您喜欢的任何测试,然后使用
    -d
    删除测试是否通过。

    我偶然发现了一个关于这一点的问题,结果发现有一些角落案例涉及死分支的命名冲突。不管怎样,我可能会使用它,出于我个人的需要,我可以避免名称冲突。有趣的是,我想这就是为什么还没有人这么做的原因(处理技术问题显然会让编写代码很烦人)。