CONTRIBUTING.md 1.8 KB
Newer Older
梦境迷离's avatar
梦境迷离 已提交
1 2 3
如何成为 Collaborator
---

梦境迷离's avatar
梦境迷离 已提交
4
[English](./CONTRIBUTING-en.md)
梦境迷离's avatar
梦境迷离 已提交
5

梦境迷离's avatar
梦境迷离 已提交
6
本库没有的语言,自己提PR新建子模块,参考`python-leetcode`新建模块,该操作不允许直接push,请尽可能的支持 `GitHub action workflows`(不会就忽略)
梦境迷离's avatar
梦境迷离 已提交
7

梦境迷离's avatar
梦境迷离 已提交
8
- 在子模块下每个人为自己建一个package,用以区分不同人。第一次以PR形式提交,merge后你将获得Collaborator权限
梦境迷离's avatar
梦境迷离 已提交
9
- 在子模块下每个人在自己package中新建一个`packageName.md`,增加题目索引再链接到当前项目的README.md
梦境迷离's avatar
梦境迷离 已提交
10

梦境迷离's avatar
梦境迷离 已提交
11 12
> 获得Collaborator权限后,请谨慎使用`git push`,每次push之前,首先拉取远程最新代码,在本地解决冲突(冲突时一定要将别人的提交保留好)。

梦境迷离's avatar
梦境迷离 已提交
13 14 15
如果你要创建新的语言的子模块,应该以下面的python-leetcode项目为例

```
梦境迷离's avatar
梦境迷离 已提交
16
python-leetcode  当然,前面可能还有通用包名io.github.xxx
梦境迷离's avatar
梦境迷离 已提交
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
    /laozhang             每个人的包
       /leetcode_12.py    每个人刷的题,这里还能创建自己的子包,区分专题
       /laozhang.md       每个人的题目索引
    /dreamylost
       /leetcode_12.py
       /dreamylost.md
    README.md             聚合每个人的.md文件
```

`packageName.md`这么链接到python-leetcode的`README.md`

```
[laozhang](./laozhang/laozhang.md)
[dreamylost](./dreamylost/dreamylost.md)
```

## 要求

梦境迷离's avatar
梦境迷离 已提交
35
* 使用非脚本语言时,必须本地编译通过,JVM平台统一使用`gradle spotlessApply`格式化代码,脚本语言不作要求
梦境迷离's avatar
梦境迷离 已提交
36 37 38
* 没有通过GitHub action workflows的代码,请立刻回滚!(目前本库只支持对JVM语言和Rust的检查)
* 没有通过sonarcloud的,请立刻回滚!
* 没有通过lgtm的,请抽空解决即可
梦境迷离's avatar
梦境迷离 已提交
39
* 解决冲突: 只允许append不能delete
梦境迷离's avatar
梦境迷离 已提交
40 41 42
* 默认的授权许可: `Apache-2.0 All Collaborators`

> 如果数据结构定义已经存在,可以尝试使用已有的。