组git分支
我接管了一个很大的git存储库,其中有很多分支,似乎没有人真正知道它们都是关于什么的。有没有办法将分支放在某种分组或文件夹中,使它们仍然存在,但不必列出?使重要的分支更容易发现组git分支,git,git-branch,Git,Git Branch,我接管了一个很大的git存储库,其中有很多分支,似乎没有人真正知道它们都是关于什么的。有没有办法将分支放在某种分组或文件夹中,使它们仍然存在,但不必列出?使重要的分支更容易发现 编辑:我希望能够区分我使用的分支和对我来说没有意义但仍然无法删除的分支。您可以使用/,分支将显示为分组到文件夹中(仅显示) i、 e.命名为: dev/major/minor1 dev/major/minor2 将这样显示(应该是一棵树): 您可以使用/,分支将显示为分组到文件夹中(仅显示) i、 e.命名为: dev/
编辑:我希望能够区分我使用的分支和对我来说没有意义但仍然无法删除的分支。您可以使用
/
,分支将显示为分组到文件夹中(仅显示)
i、 e.命名为:dev/major/minor1
dev/major/minor2
将这样显示(应该是一棵树):
您可以使用
/
,分支将显示为分组到文件夹中(仅显示)
i、 e.命名为:dev/major/minor1
dev/major/minor2
将这样显示(应该是一棵树):
删除分支
如果没有人知道它们是什么,也没有人对它们提出要求,那么就不可能有人会这样做。就像“以防万一”囤积旧报纸一样,它们只是妨碍了事情的完成。让它去吧。特别是如果他们相当落后,可能是一个皮塔更新
删除它们会很快告诉您是否有任何东西或任何人依赖它们。对于一点点可控的痛苦,你将解决一个巨大的不确定性。人们将学会不要把重要的东西乱扔乱放
分支在Git中是短暂的,并且很容易以各种方式恢复。有一些简单的事情可以让这个过程变得更简单、更健壮。这主要是为了让开发人员更高兴地删除分支
把它们做成标签
在Git中,标记基本上与分支完全相同,它们只是提交上的标签。区别在于它们不动。在分支提示上创建标记,然后删除分支提示。标记将引用提交并防止它们被垃圾收集
git tag <tag> <branch>
git branch -d <branch>
在Git中,这是一个非常便宜的过程
最终,当有一段时间没有人使用这些归档的标签时,您可以将它们作为死标签删除。在进行标记存档时商定日期。在共享日历上标记它
挽救分支内容
确保检查分支内容是否有任何可挽救的内容。如果有,您可以将其设置为活动分支或有用位
让想要保留旧分支的人“以防万一”来做这项工作
删除所有已合并的内容
您可以检查哪些分支已与master合并git branch--merged master
。删除合并的分支。提交之间的连接将保留原来的分支,合并提交将保留原来的分支。例如
A - B - C --------- G - H - I [master]
\ /
D - E - F
D-E-F
是分支中的提交,G
是合并提交。如果他们做得对,合并提交的消息将包含一些关于他们正在做什么的引用。也许是问题追踪者的链接。有关更多详细信息,请参阅
使用reflog
Git倾向于在垃圾收集之前将旧的提交保留大约两周,这样可以给您一些缓冲区。您可以在某处记下它们的提交ID,或者使用恢复它们。恢复它们非常简单,只需git分支
使用备份
存储库的备份(您有备份,对吗?)为您提供另一个缓冲区
克隆
最后,您可以在删除旧分支并将其放在某个地方之前克隆存储库。如果发现需要取消删除旧分支,则可以从该归档回购中删除该分支
但是很可能没有人会再想那些旧的分支。删除这些分支
如果没有人知道它们是什么,也没有人对它们提出要求,那么就不可能有人会这样做。就像“以防万一”囤积旧报纸一样,它们只是妨碍了事情的完成。让它去吧。特别是如果他们相当落后,可能是一个皮塔更新
删除它们会很快告诉您是否有任何东西或任何人依赖它们。对于一点点可控的痛苦,你将解决一个巨大的不确定性。人们将学会不要把重要的东西乱扔乱放
分支在Git中是短暂的,并且很容易以各种方式恢复。有一些简单的事情可以让这个过程变得更简单、更健壮。这主要是为了让开发人员更高兴地删除分支
把它们做成标签
在Git中,标记基本上与分支完全相同,它们只是提交上的标签。区别在于它们不动。在分支提示上创建标记,然后删除分支提示。标记将引用提交并防止它们被垃圾收集
git tag <tag> <branch>
git branch -d <branch>
在Git中,这是一个非常便宜的过程
最终,当有一段时间没有人使用这些归档的标签时,您可以将它们作为死标签删除。在进行标记存档时商定日期。在共享日历上标记它
挽救分支内容
确保检查分支内容是否有任何可挽救的内容。如果有,您可以将其设置为活动分支或有用位
让想要保留旧分支的人“以防万一”来做这项工作
删除所有已合并的内容
您可以检查哪些分支已与master合并git branch--merged master
。删除合并的分支。提交之间的连接将保留原来的分支,合并提交将保留原来的分支。例如
A - B - C --------- G - H - I [master]
\ /
D - E - F
D-E-F
是分支中的提交,G
是合并提交。如果他们做得对,合并提交的消息将包含一些关于他们正在做什么的引用。