LLVM 项目 “master”改名成难题:开发者讨论激烈

LLVM 项目最近一个待解决的任务是将其Git 仓库中使用“master”命名的分支更改为更具包容性的描述。到目前为止,几乎所有发表意见的人都支持这种改变,不过仍存在一些开放性的问题有待解决,比如该如何称呼新的主开发分支、评估更改分支命名涉及的技术成本,以及这种变更应该如何快速实现。

cf0bf053a042b15

在 LLVM-dev 开发者邮件列表上,关于将 LLVM Git 仓库主分支从”master”改为 “trunk”, “dev” 或 “main”等名称已经进行了非常热烈的讨论。

许多开发者似乎赞成把”master”改为”trunk”,就像使用 Subversion 开发LLVM 时一样(LLVM 的代码仓库去年已从 SVN 切换至 Git),不过 Arm 对使用”trunk”作为主分支名称表示了担忧,因为他们已经将trunk 分支用作其他用途。

同时也有少数开发者表示更愿意将其称为”dev”分支。目前,上游的 Git 和 GitHub 尚未决定如何命名新的默认术语,他们的方案可能一致也可能不一致,但无论如何都希望更具包容性。

LLVM 项目创始人 Chris Lattner 对此发表了评论并支持更改”master”分支的命名。他建议,与其自己想出一个新的名称,不如坐等上游 GitHub/Git 的方案。然后一旦落实,就与他们的方案保持一致,以避免任何不必要的混乱。

不少开发者也同意这个提议,还希望在 LLVM 新版发布后进行更改以实现平滑过渡。但也有少数人呼吁尽快改名,不希望受Git/GitHub 决定的影响而被耽误,更不希望等到下半年 LLVM 11.0 发布再改名,他们想看到一两周内就完成改掉”master”的任务。对于这种呼吁,考虑到涉及的技术成本,以及不希望意外地破坏项目上游或众多下游用户使用的任何构建/拉取脚本,有部分开发者提出了反对意见。

除了”master”这个名词,还有开发者提出用 allowlist/denylist 替换 LLVM 中的 whitelist/blacklist。目前看来这个更改提议在 LLVM 代码库中很快就会实现。还有一位开发者提出,应避免使用”work”和”job”这两个名词,因为在俄语和其他斯拉夫语言中,它可以被翻译成”奴隶(slave)”。

LLVM 面临的问题除了要就新的主分支名称达成共识外,还有变更背后的技术成本。目前所涉及的主要技术成本是必须更新其所有的构建机器人和 CI 基础设施,以便在新的分支名称下拉取代码,以及任何其他依赖 Git 中现有分支名称的脚本 ——包括那些由 LLVM 本身以外的组织使用的脚本,毕竟这些组织可能并不知道名称发生了变化。

开通VIP会员
分享到: 生成海报
免责声明1. 本站所有资源来源于用户上传和网络,均不允许转载,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 如发现会员转载本站资源文章,本站有权封禁会员账号!
4. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
5. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
6. 如有链接无法下载、失效或广告,请联系管理员处理!
7. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
8. 如遇到加密压缩包,默认解压密码为"www.abcziyuan.com",如遇到无法解压的请联系管理员!
开通VIP会员
切换注册

登录

忘记密码 ?

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活