【问题标题】:Is there any way to clean up remote repositories while keeping these repositories' commit logs?有没有办法在保留这些存储库的提交日志的同时清理远程存储库?
【发布时间】:2024-01-13 07:31:01
【问题描述】:

我知道如何删除远程分支,所以这个问题不是cleaning up old remote git branches 要么 how to manage obsolete branches on github

相反,我的问题是删除旧功能分支会丢失提交消息以及其中的 JIRA 问题标签。因此,我们将不再能够从 JIRA 看到针对给定问题所做的提交。

有什么方法可以清理、关闭或隐藏 git 分支列表中的远程分支,但不会破坏我们需要 JIRA 的 git 插件执行其操作的消息?

【问题讨论】:

    标签: git jira git-branch git-remote feature-branch


    【解决方案1】:

    git 中的分支只是指向特定版本的指针。当你删除一个分支时,你并没有删除任何提交。相反,refs/heads/<branch_name> 中的分支引用被删除。此时,所有提交仍然存在。如果没有其他对提交的引用,那么它们最终将被git gc 修剪(默认情况下不早于 30 天)。

    但是,您可能正在将这些功能分支合并到其他地方。只要这是真的,删除旧功能分支不会丢失除分支 ref 之外的任何内容。

    如果您出于某种原因没有真正合并这些功能分支,那么我不确定保留它们的意义何在。你可以标记它们,然后删除分支,如果你可以接受很多额外的标签,但不是很多分支。

    【讨论】:

    • 谢谢,就是这样!抱歉这个菜鸟问题:)
    最近更新 更多