为了更好的讲解这个操作,在这里首先进行声明
Jesse3692
这个仓库姑且认为是大神的仓库
chang2358
这个仓库是小白的仓库
大神的项目名称是叫django_crm
简单来说就是小白想给大神贡献代码,但是由于不是大神git库的成员没办法直接提交,所以就用了pull request
这个操作:先搞一个大神项目的副本,修改完成后,通知大神来拉取自己的代码
- 首先在
Github
上fork
大神的代码到你的仓库

在大神的项目页面,进行fork
操作,等待一会后这个项目会出现在你的仓库中

- 然后到把
fork
过来的项目,clone
到本地


其实克隆之后git会自动添加远程仓库的地址的,而且也不需要添加大神项目的仓库地址(看网上很多人都做这个操作,后来想了想是多此一举,一是你没人家仓库的权限,二是后面你提交代码时也是push到自己的仓库)

- 在本地修改对应的代码
-
push
到自己的仓库
$ git push origin master
- 在自己的仓库进行
pull request
的操作
首先点击这个New pull request
按钮,创建一个pull request

Github
会首先比较你仓库中的项目与大神项目的区别,并且会检查这两者之间是否可以进行合并操作

等了一会之后,Github
提示Able to merge
可以进行合并后,你就可以点击Create pull request
了。

这里会让你填一个对你修改代码的一个说明,然后就可以真正的创建一个pull request
了(点击这个Create pull request
按钮)

- 然后大神对你提交的代码进行查看,如果没问题他会进行代码的合并
下面的话就是以大神的视角查看,一般来说在你提交pull request
后大神会收到一封来自Github
的邮件,这样的话他就会查看你提交的内容

打开你的提交后,首先看到的是你之前的说明,让他先明白你对他的代码做了哪些变动,当然在这个页面大神是可以查看你提交的内容的,如果没啥问题他就可以对你提交的内容进行合并了Merge pull request

然后大神确认合并Confim merge

网友评论