前言:
上篇文章写道怎么去同步更新源项目的fork,那么接下来就说说怎么进行代码贡献
(1)入门篇:github上fork 别人的项目,源项目更新后怎么同步更新自己的fork
(2)进阶篇:github上fork别人的项目后,怎么进行代码贡献
(3)完结篇:开源项目源码集成,巧用 Git 实现自动升级,并合并您自己的修改
接下来就是手把手教学课堂,开始上课了
一:新建一个文件夹,使用git 命令 将项目克隆到本地
克隆命令:git clone https://github.com/JunkmenDream/TencentSDKCustomDemo.git
可以看到创建的文件夹下多了一个项目文件夹
(注:下载自己fork后的github地址,而不是项目地址)

二:项目中增加自己的代码并创建分支提交修改
1. 修改项目代码(例如:修改“SettingActivity.java”文件并保存)

2. 先创建自己的分支
问:为什么我们要创建分支?
答:假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。
现在有了分支,就不用怕了。你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作。而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作。
2.1 选中项目右键选择->"Git Bash Here"用Git 命令打开
2.2 git branch 查看现有分支,我们看到会有一个master分支

2.3 git checkout -b junker 或者 git switch -c junker 创建并切换到分支dev,我们再次查看分支,看到已经切换到 junker 分支

3. 提交代码到本地的暂存区
(1)git add . 把项目的所有变化提交到暂存区
(2)git commit -m "注释提交说明" 将暂存区里的改动给提交到本地的版本库

4. 将暂存区的项目提交到自己的GitHub远程仓库
4.1 git push origin junker 将修改后的项目推送到仓库项目中

4.2 提交成功后可以看到我们的仓库项目中已经有了刚才提交的分支

5. 将junker分支提交的修改合并到master主分支上
5.1 选择需要合并的分支及仓库

5.2 点击" Create pull request "创建一个新的pull请求

5.3 点击" Merge pull requet "合并pull请求

5.4 回到项目主页面可查看到合并后的提示(到此您已经完成了项目的fork更新)

5.5 定位到项目修改位置,查看最新的修改代码

6. 将fork的项目修改提交请求等待源项目管理员合并
6.1 点击 Pull request

6.2 创建一个新的 pull request

6.3 选择好提交位置,点击“Create pull request” 创建一个pull请求

6.4 填写请求描述,确认请求

6.5 提交成功,等待源作者合并

6.6 原作者显示

网友评论