[git]如何给开源项目(github/gitee)贡献代码

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_20032995/article/details/84502141

场景

当我们在开源项目中发现可以优化得更好的地方,我们会想着能将修改的代码提交并且merge到开源项目中;但是,在很多情况下,我们并没有push权限。

这时候,我们可以尝试
fork & pull request
这种操作来提交代码,下面讲述这种情况
fork & pull request

怎么做(实例)

仓库https://github.com/2liang/AutoBuildDocFromDB.git

假如现在发现有可以修改或者提交的代码,我们可以这样做

一、对仓库进行fork(因为我们没有权限push),克隆代码到本地

git clone https://github.com/2liang/AutoBuildDocFromDB.git

二、从master中拉取一个分支dev(本地)

git branch dev
git checkout dev

四、在该分支提交你的更改,然后提交

git commit -m "优化XXX"

五、在原来的push地址的基础上,再新增一个push地址,这个地址是你fork项目后的地址

git remote add myDev https://github.com/luck-cheng/AutoBuildDocFromDB.git

六、推送本地分支到自己fork的仓库(可以先做merge,再push或者在web端进行都可以)

git fetch origin
//这里是先本地merge然后再push的
git merge origin/dev

git push myDev dev

七、这样我们的fork库的dev分支包含了刚刚的commit(刚刚的更改),GitHub仓库页面有个“pull request”按钮,点击就可以create pull request。注意推送的来源和目的地(这里是要注意选择修改的),另外可以点击下面的标签file changed查看具体的变动,确认无误后填写pull request的标题和具体内容,最后点击create pull request
(按钮);

最后一步:能不能顺利merge进开源仓库,就随缘佛系了(要看权限管理员心情了)。

猜你喜欢

转载自blog.csdn.net/qq_20032995/article/details/84502141