为了方便管理,FOSScope 对贡献者的 git 提交信息以及 git 分支命名做了一些规范。请在提交代码时遵循以下规范。
git 分支命名规范
FOSScope 严格禁止在主分支(master/main)上直接提交代码。对于对 FOSScope 仓库拥有读写权限的贡献者来说,所有的代码提交都应该在新建的分支上进行,然后通过 Pull Request 的方式合并到主分支。对于其他贡献者来说,也应该在自己的 fork 仓库中新建分支进行代码提交,而不是直接在主分支上提交。
任何自 fork 的仓库的主分支提交的 Pull Request 将直接被拒绝
整体来讲,FOSScope 采用使用 / 来分隔命名空间的方式来命名分支。这样可以帮助我们更好的分辨分支的用途。
Article 仓库
对于 Article 仓库(即原创文章与中文转载文章源文件库),分支命名规范如下:
submit/xxx:提交新文章publish/xxx:发布文章(仅 FOSScope 核心成员使用)update/xxx:更新提交/发布后的文章,用于修复错误,错别字等
下面几个分支命名应当并不常见,因为其操作应谨慎使用:
delete/xxx:删除已发布的文章(撤稿),仅 FOSScope 核心成员使用
其中 xxx 为提交文章的对应文件名(不包含 .md 后缀)。即:如果你提交的文章使用了 20240318-某软件的配置.md 作为文件名,那么你的分支名应该是 submit/20240318-某软件的配置。
文件名的命名格式请参考投稿指南
TranslateProject 仓库
对于 TranslateProject 仓库(即翻译项目库),分支命名规范如下:
select/<type>/xxx:提交新选题(英文原文)文件(仅 FOSScope 翻译组选题组人员使用)apply/<type>/xxx:提交翻译申请translate/<type>/xxx:提交翻译后的文章review/<type>/xxx:校对翻译后的文章(仅 FOSScope 翻译组核心成员/校对使用)publish/<type>/xxx:发布翻译后的文章(仅 FOSScope 翻译组核心成员使用)
下面几个分支命名应当并不常见,因为其操作应谨慎使用:
update/<type>/xxx:更新翻译后的文章,用于修复翻译错误,错别字等close/<type>/xxx:关闭翻译申请,相当于将翻译申请撤销。如果译者长期不提交翻译或选择主动放弃翻译,可以进行此操作。delete/<type>/xxx:删除翻译后的文章(撤稿),仅 FOSScope 翻译组核心成员使用
其中的 type 为文章类型,分别为:
news:新闻talk:评论/观点/访谈等tech:技术(教程、解析等)
其中 xxx 为提交文章的对应文件名(不包含 .md 后缀)。
对 FOSScope 翻译组核心成员:
- 如果你将一人完成校对与发布工作,分支命名应直接使用
publish/xxx。 - 如果你打算直接完成申请、翻译、校对、发布工作,分支命名应直接使用
atrp/xxx。(如果你打算翻译的文章暂未被选题但你直接进行了翻译,直接使用此类型,不需要单独创建选题分支)
举例:如果你打算翻译一篇《Linux is Just a Kernel: What Does it Mean?》,其被存储在 source/tech 路径下(意味着其类型为技术文章),而且文件名为 20230223-linux-is-just-a-kernel-what-does-it-mean.md,那么你的分支名应该是 apply/tech/20230223-linux-is-just-a-kernel-what-does-it-mean。当你提交翻译稿时,分支名应该是 translate/tech/20230223-linux-is-just-a-kernel-what-does-it-mean。
文件名的命名格式请参考投稿指南
如果校对与发布工作是又同一个人完成的,那么可以直接使用 publish/xxx 分支同时完成校对与发布工作。
git 提交信息规范
Article 仓库
对于 Article 仓库,提交信息使用以下格式:
1 | [提交类型] 文章标题 |
其中 提交类型 为:
提交:提交新文章发布:发布文章更新:更新提交/发布后的文章删除:删除已发布的文章
而 文章标题 则为文章的标题。
例如:如果你提交了一篇标题为《某软件的配置》的文章(分支名为 submit/20240318-某软件的配置),那么提交信息应该是:
1 | [提交] 某软件的配置 |
TranslateProject 仓库
对于 TranslateProject 仓库,提交信息使用以下格式:
1 | [提交类型][文章类型] 文章原文标题 |
其中 提交类型 为:
选题:提交新选题(英文原文)文件申请:提交翻译申请翻译:提交翻译后的文章校对:校对翻译后的文章发布:发布翻译后的文章更新:更新翻译后的文章撤销申请:关闭翻译申请删除:删除翻译后/已发布的文章
文章类型仍然为 news、talk、tech 三种类型。
对 FOSScope 翻译组核心成员:
- 如果你将一人完成校对与发布工作,提交类型应为
[校对&发布]。 - 如果你打算直接完成申请、翻译、校对、发布工作,提交类型应为
[ATRP]。(如果你打算翻译的文章暂未被选题但你直接进行了翻译,直接使用此类型,不需要单独提交选题)
例如:如果你提交了一篇标题为《Linux is Just a Kernel: What Does it Mean?》的文章(分支名为 translate/tech/20230223-linux-is-just-a-kernel-what-does-it-mean),那么提交信息应该是:
1 | [提交][tech] Linux is Just a Kernel: What Does it Mean? |