如何正确地给 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 分支,合并本地 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
分支,合并本地master
分支(已经和原始仓库同步),可能需要解冲突提交本地
仓库dev
分支到自己的远程dev
分支到自己的远程
请求pull request
现在才是给原始仓库发1:先去github fork别人的repo,然后修改
2:再跑到你的space下点你fork的这个工程,再点击new pull request
3:然后会跳转到,原作者的repo下,出现pull request的界面,你就选择一下想要提交的branch就行了,如果有文件可以提交,下面会有commit的按钮,你填一下description就ok了,然后等作者merge