如何贡献代码到Github开源项目

2,845 阅读2分钟

在前端日常开发中,为了提高开发效率,我们经常会引用第三方开源库或框架。例如 jQueryVue.jsiView 等等。

而当开源框架现有的功能不能满足我们的需要时,就需要提 issue ,或提 PR(贡献代码)。

本文将以 hey-cli-template 为例,探讨如何贡献代码到 Github 开源项目中。

1、需求背景

hey-cli 是一个命令行工具,通过 hey-cli ,我们可以一键搭建交互式的项目脚手架。

hey-cli-template 是被 hey-cli 引用的项目模板库,目前包含的模板库有:

  1. simple webpack project
  2. simple react project
  3. simple vue project
  4. simple heyui project
  5. simple iviewui project
  6. simple elementui project

现在我们希望加入一个 simple heyadmin project ,以便一键创建 heyadmin 项目。

在提 issue 被作者回应提 It would be better if you could PR directly. 后(作者很忙啊XD),我们看看如何PR吧!

2、开发流程

2.1 Fork 要PR的 Github 项目地址到自己的 Github :

Fork 成功后,如下图:

2.2 Clone 上一步 fork 成功的 Github 项目到本地:

git clone https://github.com/xxx/hey-cli-template.git

2.3 与要 PR 的 Github 项目建立链接:

git remote add upstream https://github.com/heyui/hey-cli-template.git

查看是否建立了链接,此时除了 origin 地址外,还会多两个 upstream 地址:

git remote -v

2.4 创建新分支(分支名可自定):

git checkout -b dev-ak

2.5 修改代码

2.6 将当前分支推送到自己的远程仓库:

git add .
git commit -m "xxxx"
git push origin dev-ak

2.7 上一步完成后,在自己的 Github hey-cli-template 目录下,会出现下面的提示栏,点击后编辑内容,即可提交 PR:

2.8 提交成功后,会生成一条 PR。

大功告成,后面就是等待作者check合并了。

3、注意事项

每次 PR 之前,记得先与远程仓库做代码同步:

git fetch upstream
git rebase upstream/master
git push origin master

以上。