diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 4bda5b7..4a93ae5 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -1,8 +1,8 @@ # 贡献指南 # -欢迎你为本项目作出贡献!本项目的发展离不开所有贡献者的贡献。 +欢迎你为本项目作出贡献!本项目的发展离不开所有贡献者(不仅仅只是提交了相关代码,帮助编写文档,还是提出问题或想法也算是贡献者之一!)的贡献。 在为本项目作出任何贡献之前,请先阅读[贡献者准则](https://github.com/LamGC/ContentGrabbingJi/blob/3.0.0/CODE_OF_CONDUCT.md), -一旦你尝试为本项目贡献,即代表你认同并接受贡献者准则,明白且接受因违反贡献者准则所造成的后果。 +一旦你尝试(或正在)为本项目贡献,即代表你认同并接受贡献者准则,清楚明白且接受因违反贡献者准则所造成的后果。 ## 代码规范 ## 本项目代码规范大部分遵循 《Alibaba Java Coding Guidelines》, @@ -14,25 +14,79 @@ ``` [TAG] ModuleName 对提交的说明; -[TAG] FileName 对该文件的说明; +[TAG] FileName/ClassName 对该文件的说明; ... ``` -对于类代码文件而言,FileName只需要填写类名,对其他文件则需要包括后缀名。 +#### 标点符号的使用 #### +在提交信息中,符号使用英文符号。 +#### 文件名或类名的说明 #### +对于类代码文件而言,FileName 只需要填写类名,对其他文件则需要包括后缀名。 FileName 和 ModuleName 可按需要使用`, `追加,注意与说明空一格, 例如: `[Add][Change] SimpleClass, MainClass 添加 SimpleClass 并调整 MainClass 的日志格式;` + +#### 标签的使用 #### 目前支持以下Tag: -- Add 文件添加 -- Change 文件更改 -- Update 更新文件 -- Delete 文件删除 -- Document 文档相关 -- Fix 问题修复 -- Optimize 优化相关 -- Move 文件移动(例如包更改) -- Rename 更改名称(类名, 文件名等) +- `Add` 文件添加 +- `Change` 文件更改 +- `Update` 更新文件 +- `Delete` 文件删除 +- `Document` 文档相关 +- `Fix` 问题修复 +- `Optimize` 优化相关 +- `Move` 文件移动(例如包更改) +- `Rename` 更改名称(类名, 文件名等) +- `Issue:Id` 指定 Commit 所关联的 Github Issue(如果与其他标签有关,可直接加到指定标签后方,该标签可不用加) +- `PR:ID` 指定 Commit 所关联的 Pull Request(可选的,可直接使用 Github 的默认 Commit Message) ModuleName 根据修改的相关子模块名填写即可,对项目而非子模块的更改,则 ModuleName 为 `Project`。 -对大部分文件而言,FileName 按照以上规则填写即可,但对于依赖项而言,则要按照 GAV 坐标填写,例如:`[Add] junit:junit 添加 Junit 单元测试依赖项;` +对大部分文件而言,FileName 按照以上规则填写即可,但对于依赖项而言,则要按照 GAV 坐标填写, +例如:`[Add] junit:junit 添加 Junit 单元测试依赖项;`, +或者更新依赖项:`[Update] junit:junit 更新 Junit 以修复潜在的漏洞('4.13' -> '4.13.1');` + +#### 引用 Github 中的相关 Issue 或者 PR #### +如需引用相关 Issue 或者 PR(Pull Request),可在相关 Tag 中引用,或者另起一个 Tag 并声明指定的 ID,例如: +``` +[Fix #11] Module 修复了部分功能异常情况; + +... +``` +或者是: +``` +[Change][Issue #15] Module 增加了一些功能; + +... +``` +对于需要修复的相关 Issue,既可以采用第一种形式,也可以用第二种形式,单独添加一个 Issue 标签标明关联的 Issue 即可,比如这样: +``` +[Fix][Issue #17] Module 修复了返回异常的问题; + +... +``` +如确定修复完成,也可以直接使用 Github 会对其作出相关操作的词(?),比如: +``` +[Fix close#20] Module 修复响应码判断错误的问题; + +... +``` +或者是 +``` +[Fix][Issue fixed#28] Module 修复模板编译错误的问题; + +... +``` + + +## 代码质量 ## +如果你想添加新的功能,请务必对新功能相关代码编写好覆盖全,情况完善的单元测试! +覆盖全,多角度,高度完善的单元测试是保证代码、项目质量必不可少的! +每次提交后,请检查 Action,查看 Github 中的代码是否能通过所有的单元测试。 + + + + + + +