为了方便管理,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? |