PullRequest简称PR。
这里以源项目 https://github.com/k2-fsa/sherpa-ncnn 为例。
1.fork别人的项目
点击fork按钮,根据提示操作。之后就能在自己的空间里看到项目。
2.克隆自己的项目
fork来的项目已经有了自己专属的git网址。首先,克隆这个url到本地。
然后,将源项目添加到自己项目的upstream。并创建一个自己的分支。
1 2 3 4 5 6 7 8 9 10 |
git clone https://github.com/k2-fsa/sherpa-ncnn cd sherpa-ncnn # 进入根目录 git remote add upstream https://github.com/k2-fsa/sherpa-ncnn # 【关键步骤】 git remote -v # 可见下面4行。前2行是自己项目的,后两行是源项目的 # origin https://github.com/731942771/sherpa-ncnn.git (fetch) # origin https://github.com/731942771/sherpa-ncnn.git (push) # upstream https://github.com/k2-fsa/sherpa-ncnn (fetch) # upstream https://github.com/k2-fsa/sherpa-ncnn (push) git checkout -b android-java # 创建分支android-java,分支名要有意义。 # Switched to a new branch 'android-java' |
3.开发
按自己的意愿更新代码,然后提交。此时提交到自己的项目git上。
1 2 3 |
git add 目录或文件 git commit -m "提交说明-首次提交说明要明了扼要" git push origin android-java # 上一步创建的分支 |
4.提交PR
首次提交后,在自己的项目界面会有提示。
点击“Compare & pull request”,在新界面确认base端是源项目的master分支, head端选择自己项目的新分支。填写必要的说明。最后点击“Create pull request”
之后会跳转到源项目的 Pull requests 界面,等待源项目创建者审核即可。
5.后续开发
上面步骤完成后。再次开放,提交时只要还是自己的“android-java”分支,提交后,会自动向源项目提交PR。
6.拉取原仓库更新
前文中已经进行“git remote add upstream <源项目github地址>”操作,关联了上级仓库(源项目)。
要获取源项目的更新,可使用fetch更新。默认fetch后会被存储在一个本地默认分支upstream/master上。
1 |
git fetch upstream # 拉取源项目更新 |
然后,合并到本地分支。在“android-java”分支,或切换到master分支。执行合并。
1 |
git merge upstream/master # 将拉取的更新合并到自己项目分支 |
后续开发默认按《6,3,4》顺序操作即可。
- end
本文由崔维友 威格灵 cuiweiyou vigiles cuiweiyou 原创,转载请注明出处:http://www.gaohaiyan.com/4252.html
承接App定制、企业web站点、办公系统软件 设计开发,外包项目,毕设