什么是“陈旧”的 git 分支?

“陈旧”的 git 分支是我听过很多次的术语。我知道它与那些被认为不太有用或没有用的分支有关,但是却找不到一个确切的定义。什么是“陈旧”的 git 分支?

112010 次浏览

那是因为没有“确切的定义”。“陈旧的 git 分支”、“陈旧的数据”、“陈旧的配置选项”——这些都没有 一模一样定义,但它们都指的是那些被认为是陈旧的/未维护的/不是当前的/可能已经坏掉的东西。

因此,“陈旧的 git 分支”通常是存储库的一个分支,很长时间以来都没有被触及。它可能坏了,也可能没有; 它肯定不是当前活动开发分支的 w/r/t,而且已经有一段时间没有人查看它了。

提交 e194cd1(2007年1月,Git 1.5.0)中找到了对“ stale”的最古老的引用,它检测到了“ 远程跟踪过时的分支”: 当跟踪一个被远程系统删除的分支时。
这就是 git remote prune

这是陈旧分支的主要定义: 远程跟踪分支(远程回购分支的 本地引用) ,不再追踪任何东西(因为远程回购上的实际分支已经消失)。

git remote show能够列出这些。


顺便说一句,在 Git 系统中还有两个关于“陈旧”的定义:

  • 另一个关于“ stale”的引用涉及到 犯下1389d9d中的 git reflog --stale-fix(Git 1.5.0) ,用于跟踪“ 破碎的承诺”: 一个提交,不能从任何参考文献中访问,并且在提交、树或 blob 对象中有一个缺失的对象,不能从任何参考文献中访问 裁判。
    这有助于修复在有 reflog 存在的情况下从较旧的 git 运行不支持 reflog 的 git prune之后出现的问题

  • Commit 740fdd2 (2008年3月,Git 1.5.5)也为 象征性的参考引入了“过时”,当它们指向的参考文献不再存在时。


正如@SteelToe 提到的: 根据 GitHub 文档,陈旧分支的定义是一个在过去3个月中没有提交任何内容的分支。
这通常表示一个旧的/未维护的/非当前的分支。

根据 GitHub 文档,陈旧分支的定义是一个在过去3个月中没有提交任何内容的分支。

这通常表示一个旧的/未维护的/非当前的分支。

有关详细信息,请参阅 https://help.github.com/articles/viewing-branches-in-your-repository/

陈旧的分支 是一个在一段时间后没有活动的分支。

项目拥有陈旧分支的原因: 未发布的特性、原型、替代解决方案、不完整、不兼容。

继续读