跳转到内容

如何为项目贡献代码 ​

一、准备工作 ​

  • 安装 Git;

  • 安装 Sourcetree,这个工具是 git 的一种图形化界面;

  • 注意安装 git 的时候记得勾选将 git 所在目录添加到系统环境变量;

1.DotNet项目
  • 安装 Visual Studio 2022;

  • 安装 Visual Studio 2022 的 CodeMaid 扩展插件,这个插件可以自动格式化代码;

  • 若有新功能开发,请添加文件头,这在后续修改代码文件或多人合作项目时有莫大的好处。如下为我的示例:

csharp
// Copyright (c) 2021-Present XiHanFun and contributors.
// Licensed under the MIT License. See LICENSE in the project root for license information.

下面就来说说怎么创建并修改默认模板。

1.新建模板文件 ​

注意:我所用环境为 Visual Studio 2022,以下模板适合 C#10 新语法,旧语法及旧版本以类似方法修改。

在空白目录创建以下三个文件:

Class.cs

csharp
// Copyright (c) 2021-Present XiHanFun and contributors.
// Licensed under the MIT License. See LICENSE in the project root for license information.

namespace $rootnamespace$;

/// <summary>
/// $safeitemrootname$
/// </summary>
public class $safeitemrootname$
{
}

Controller.cs 这里仅为ApiController

csharp
// Copyright (c) 2021-Present XiHanFun and contributors.
// Licensed under the MIT License. See LICENSE in the project root for license information.

namespace $rootnamespace$;

/// <summary>
/// $safeitemrootname$
/// </summary>
[Route("api/[controller]")]
[ApiController]
public class $safeitemname$ : ControllerBase
{
}

Interface.cs

csharp
// Copyright (c) 2021-Present XiHanFun and contributors.
// Licensed under the MIT License. See LICENSE in the project root for license information.

namespace $rootnamespace$;

/// <summary>
/// $safeitemrootname$
/// </summary>
public interface $safeitemrootname$
{
}

2.找到模板目录并复制 ​

例如安装的 Visual Studio 2022 在 C 盘,则对应的模板目录在:

Class

C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\ItemTemplates\CSharp\Code\2052\Class C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\ItemTemplates\AspNetCore\Code\1033\Class

Interface

C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\ItemTemplates\CSharp\Code\2052\Interface C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\ItemTemplates\AspNetCore\Code\1033\Interface

Controller

C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\ItemTemplates\AspNetCore\Web\ASP.NET\1033\WebApiEmptyController

2.Vue项目
  • 安装 Visual Studio Code;

  • 安装 Visual Studio Code 的 Prettier - Code formatter 扩展插件,这个插件可以自动格式化代码;

二、贡献代码 ​

1. 新建自己的分支(Fork) ​

将本项目仓库 fork 到自己的 git 仓库中。

2. 克隆(Clone) ​

将已经 fork 的仓库 clone 到自己的本地 PC。

3. 创建本地分支 ​

如果想要在本项目上做自己的开发,最好创建属于自己的项目分支,如果是直接贡献代码,那么可以直接在 dev 分支上进行操作。

4. 开发 ​

  1. 发现了一个小 Bug 并进行修改。
  2. 在打开的 Issues 中选择功能并进行开发。

5. 提交(Commit) ​

向本地仓库提交 Bug。

这里是 Git 提交信息前缀规则:

前缀描述示例
feat新功能增加(feature)feat: add user login feature
fix修复 BUGfix: correct user authentication
refactor代码重构(既不是新增功能,也不是修复 Bug)refactor: simplify user validation logic
perf性能优化perf(core): optimize virtual DOM diffing algorithm
docs文档/注释docs: update API documentation
chore依赖更新/脚手架配置修改等chore: upgrade React to the latest version
revert代码撤销修改revert: revert commit 12345abc
style代码风格相关无影响运行结果的style: format code with prettier
test测试相关test: add unit tests for login feature
build影响构建系统或外部依赖的更改(例如:gulp,broccoli,npm)build: update webpack config
ci持续集成的配置文件和脚本的变动(例如:Travis,Circle,BrowserStack,SauceLabs)ci: update Travis configuration

这种方式便于清晰区分每种提交的目的和用途。

6. 保持本地仓库最新 ​

在准备发起 Pull Request 之前,需要同步原仓库最新的代码,记得检查目前的项目是否是最新的版本。

7. 推送到远程仓库(Push) ​

push 到开发者自己的远程仓库中。

8. 发起并完成合并请求(Pull Request) ​

在 git 仓库中选择自己修改了的分支,点击 create pull request 按钮发起 pull request。

三、提交代码的一些约定 ​

发起请求成功后,本项目维护人就可以看到你提交的代码。pull request 如果被同意,你的代码就会被合并到仓库中。这样一次 pull request 就成功了。

至此,我们就完成了一次代码贡献的过程。

Released under The MIT License