github上fork别人的项目后,怎么进行代码贡献
前言:
上篇文章写道怎么去同步更新源项目的fork,那么接下来就说说怎么进行代码贡献
(1)入门篇:github上fork 别人的项目,源项目更新后怎么同步更新自己的fork
(2)进阶篇:github上fork别人的项目后,怎么进行代码贡献
(3)完结篇:开源项目源码集成,巧用 Git 实现自动升级,并合并您自己的修改
接下来就是手把手教学课堂,开始上课了
一:新建一个文件夹,使用git 命令 将项目克隆到本地
克隆命令:git clone https://github.com/JunkmenDream/TencentSDKCustomDemo.git
可以看到创建的文件夹下多了一个项目文件夹
(注:下载自己fork后的github地址,而不是项目地址)
![](https://img.haomeiwen.com/i6762185/30efb35af47db78d.png)
二:项目中增加自己的代码并创建分支提交修改
1. 修改项目代码(例如:修改“SettingActivity.java”文件并保存)
![](https://img.haomeiwen.com/i6762185/9a3b84fb498b5153.png)
2. 先创建自己的分支
问:为什么我们要创建分支?
答:假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。
现在有了分支,就不用怕了。你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作。而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作。
2.1 选中项目右键选择->"Git Bash Here"用Git 命令打开
2.2 git branch 查看现有分支,我们看到会有一个master分支
![](https://img.haomeiwen.com/i6762185/f46e8a71a74af432.png)
2.3 git checkout -b junker 或者 git switch -c junker 创建并切换到分支dev,我们再次查看分支,看到已经切换到 junker 分支
![](https://img.haomeiwen.com/i6762185/efc63d26f2a1315b.png)
3. 提交代码到本地的暂存区
(1)git add . 把项目的所有变化提交到暂存区
(2)git commit -m "注释提交说明" 将暂存区里的改动给提交到本地的版本库
![](https://img.haomeiwen.com/i6762185/6e678103665fa87f.png)
4. 将暂存区的项目提交到自己的GitHub远程仓库
4.1 git push origin junker 将修改后的项目推送到仓库项目中
![](https://img.haomeiwen.com/i6762185/c4532f6b3b477378.png)
4.2 提交成功后可以看到我们的仓库项目中已经有了刚才提交的分支
![](https://img.haomeiwen.com/i6762185/da51519a4354d7bf.png)
5. 将junker分支提交的修改合并到master主分支上
5.1 选择需要合并的分支及仓库
![](https://img.haomeiwen.com/i6762185/add3632278f1693e.png)
5.2 点击" Create pull request "创建一个新的pull请求
![](https://img.haomeiwen.com/i6762185/1836a911e52ff9f3.png)
5.3 点击" Merge pull requet "合并pull请求
![](https://img.haomeiwen.com/i6762185/a23fa3d0e7c9d41f.png)
5.4 回到项目主页面可查看到合并后的提示(到此您已经完成了项目的fork更新)
![](https://img.haomeiwen.com/i6762185/82bdafd7f9a47067.png)
5.5 定位到项目修改位置,查看最新的修改代码
![](https://img.haomeiwen.com/i6762185/c9f656dd30e12b58.png)
6. 将fork的项目修改提交请求等待源项目管理员合并
6.1 点击 Pull request
![](https://img.haomeiwen.com/i6762185/8886c973e6b2aa61.png)
6.2 创建一个新的 pull request
![](https://img.haomeiwen.com/i6762185/f62081cf9d9ea489.png)
6.3 选择好提交位置,点击“Create pull request” 创建一个pull请求
![](https://img.haomeiwen.com/i6762185/71993324c529e672.png)
6.4 填写请求描述,确认请求
![](https://img.haomeiwen.com/i6762185/5652a3dad9aae8d3.png)
6.5 提交成功,等待源作者合并
![](https://img.haomeiwen.com/i6762185/a408eae3a778fc8e.png)
6.6 原作者显示
![](https://img.haomeiwen.com/i6762185/e6f79d7198bc9ffb.png)