9
0
mirror of https://github.com/LeavesMC/Leaves.git synced 2025-12-19 14:59:32 +00:00

[ci skip] Update Contributing

This commit is contained in:
violetc
2022-08-03 12:11:23 +08:00
parent 4502f57ea4
commit 35053aa6fc
2 changed files with 67 additions and 2 deletions

View File

@@ -1,2 +1,4 @@
Contributing to Leaves
TODO
===========
**English** | [中文](https://github.com/LeavesMC/Leaves/blob/master/docs/CONTRIBUTING.md)

View File

@@ -1,2 +1,65 @@
Contributing to Leaves
TODO
===========
[English](https://github.com/LeavesMC/Leaves/blob/master/docs/CONTRIBUTING.md) | **中文**
我们很开心您愿意为我们的项目做出共享。一般来说我们对PR的审核是十分宽松的
但是如果您可以遵守下列的规则,我们可以更快地完成审核。
## 使用个人账户进行fork
我们会定期尝试合并已有的PR如果有一些小问题会尝试帮您解决这些问题。
但是如果您使用了组织账号进行PR我们就不能对您的PR进行修改了。因此我们只能关闭你的PR然后进行手动合并
所以请不要使用组织账号进行fork
您可以看看 [这个](https://github.com/isaacs/github/issues/1681) 来了解一下我们为什么无法修改组织账号的PR
## 开发环境
在开始开发之前,您首先需要拥有以下软件作为开发环境
- `git`
- Java17或更高版本的JDK
- 我们使用了Gradle的Toolchains这让你可以使用JRE8就进行构建。(Gradle在找不到JDK17的时候会自动下载)
如果你使用Windows系统进行开发那么你可以使用WSL来加速构建
## 了解补丁
Leaves使用和Paper一样的补丁系统并为了针对不同部分的修改分成了两个目录
- `leaves-api` - 对 `Paper-API`/`Spigot-API`/`Bukkit` 进行的修改
- `leaves-server` - 对 `Paper`/`Spigot`/`CraftBukkit` 进行的修改
补丁系统是基于git的你可以在这里了解git的基本内容 <https://git-scm.com/docs/gittutorial>
如果你已经fork了主储存库那么下面你应该这么做
1. 将你的仓库clone到本地
2. 在你的IDE或终端内执行gradle的`applyPatches`任务,如果是在终端内,你可以执行`./gradlew applyPatches`
3. 进入`leaves-server``leaves-api`进行修改
`leaves-server``leaves-api`并不是正常的git仓库
- 在应用补丁前,基点将会指向未被更改的源码
- 在基点后的每一个提交都是一个补丁
- 只有在paper最后一个提交后的提交才会被视为leaves补丁
## 增加补丁
按照以下步骤增加一个补丁是非常简单的
1.`leaves-server`或者/和`leaves-api`进行修改
2. 使用git添加你的修改比如`git add .`
3. 使用`git commit -m <提交信息>`进行提交
4. 运行gradle任务`rebuildPatches`将你的提交转化为一个补丁
5. 将你生成的补丁文件进行PR
这样做以后你就可以将你的补丁文件进行PR提交
## 修改补丁