如何正确地给 github 的开源项目提交 pull request具体一些,比如 fork 之后创建几个分支,修改后如何和原项目同步,谢谢
首先感谢回答,但是这个我并不认为是正确的打开方法,我也是因为不想用上面的方法所以提问的。我来说一下上面的方法有什么问题:
在修改之后不需要先同步原始仓库的修改?
同步的时候我是直接 pull 吗?冲突不让拉取如何解决?(当然可以 fetch 再 merge 什么的操作)
pull
fetch
merge
我认为比较正确的打开方法:
fork 原始仓库
fork
clone 自己的仓库
clone
在 master 分支添加原始仓库为远程分支 git remote add upstream 远程仓库
master
git remote add upstream 远程仓库
自己分支开发,如 dev 分支开发:git checkout -b dev
dev
git checkout -b dev
本地 dev 提交
切换 master 分支,同步原始仓库:git checkout master, git pull upstream master
git checkout master
git pull upstream master
切换本地 dev 分支,合并本地 master 分支(已经和原始仓库同步),可能需要解冲突
提交本地 dev 分支到自己的远程 dev 仓库
现在才是给原始仓库发 pull request 请求
pull request
等待原作者回复(接受/拒绝)
1:先去github fork别人的repo,然后修改2:再跑到你的space下点你fork的这个工程,再点击new pull request3:然后会跳转到,原作者的repo下,出现pull request的界面,你就选择一下想要提交的branch就行了,如果有文件可以提交,下面会有commit的按钮,你填一下description就ok了,然后等作者merge
首先感谢回答,但是这个我并不认为是正确的打开方法,我也是因为不想用上面的方法所以提问的。
我来说一下上面的方法有什么问题:
在修改之后不需要先同步原始仓库的修改?
同步的时候我是直接
pull
吗?冲突不让拉取如何解决?(当然可以fetch
再merge
什么的操作)我认为比较正确的打开方法:
fork
原始仓库clone
自己的仓库在
master
分支添加原始仓库为远程分支git remote add upstream 远程仓库
自己分支开发,如
dev
分支开发:git checkout -b dev
本地
dev
提交切换
master
分支,同步原始仓库:git checkout master
,git pull upstream master
切换本地
dev
分支,合并本地master
分支(已经和原始仓库同步),可能需要解冲突提交本地
dev
分支到自己的远程dev
仓库现在才是给原始仓库发
pull request
请求等待原作者回复(接受/拒绝)
1:先去github fork别人的repo,然后修改
2:再跑到你的space下点你fork的这个工程,再点击new pull request
3:然后会跳转到,原作者的repo下,出现pull request的界面,你就选择一下想要提交的branch就行了,如果有文件可以提交,下面会有commit的按钮,你填一下description就ok了,然后等作者merge