超级详细Gitbash实战教程02:Pull Request流程

1、教程介绍

(话比较累赘,只是希望通过大白话更多的帮助到各位小白们,大神勿喷哈)
(话比较累赘,只是希望通过大白话更多的帮助到各位小白们,大神勿喷哈)
(话比较累赘,只是希望通过大白话更多的帮助到各位小白们,大神勿喷哈)
由于Github是开源项目,所以这次教程是讲解我们从别人那里Fork了一个仓库到我们自己的Github上,此时如何对我们自己Github上的仓库进行相关操作(这个第一篇文章已经非常详细的讲解了),以及对被Fork的项目如何操作。(大白话即假设A用户在Github上看到B用户的一个很好的代码仓库,A于是通过Fork将其复制到了自己Github下,此时A不仅可以对复制到自己Github中的仓库进行操作,也可以对B用户下的仓库中内容进行操作,只是在我们操作后提交给B用户时需要B用户同意后才能成功(B用户觉得你提交的内容非常好对他之前的代码进行了很好的完善,B同意你的提交,此处你的提交就同步到B用户的仓库中了,如果B不同意此时也可以给你反馈信息等),不然任何一个人都可以乱改仓库中的内容了

建议先学习第一篇文章:超级详细Gitbash实战教程01

2、准备工作

  1. 需要两个Github的用户A和B(此处我又新注册了一个Github用户);
  2. 在B用户中新建一个仓库,在仓库中新建一个BBB.txt文件,文件内容为“我是B用户的仓库文件”
  3. 假设是A用户Fork了B用户的一个仓库(仓库名为Test_B)

3、详细过程

3.1、B用户相关操作
  1. 新建一个名为Test_B的仓库,并在仓库下新建一个BBB.txt文件,文件内容为“我是B用户的仓库文件
    在这里插入图片描述在这里插入图片描述
3.2、A用户相关操作

1.登录A用户,通过B用户Test_B仓库的地址找到这个仓库,A用户Fork B用户的Test_B仓库,此时就复制到了自己的Github中;
在这里插入图片描述在这里插入图片描述

  1. 在电脑本地任意盘符新建一个Gitbash_Test文件夹,并将刚刚Fork的仓库克隆到刚刚这个文件中。(是在A用户下操作哈,连接的库地址是A用户Fork后的仓库地址)
    在这里插入图片描述

  2. 新建一个分支,在分支中修改BBB.txt文件内容(新增一行内容:我是A用户,我完善了这个BBB.txt文件内容),并将分支推送但远程仓库。此时A用户的远程仓库就同步更新了这个BBB.txt文件
    在这里插入图片描述VI编辑去编辑这个BBB.txt文件(新增一行内容)
    在这里插入图片描述

  3. 刷新Github,即可看到刚刚提交的内容,此时你觉得这个修改还不多,同时也想分享给B用户,即乐于助人的我想把完善的文本内容告诉B,此时我们新建一个Pull Request
    在这里插入图片描述点击这个创建即可,往下拉可以查看修改的内容
    在这里插入图片描述这里显示修改的内容
    在这里插入图片描述创建成功
    在这里插入图片描述

3.3、B用户开始操作了
  1. 登录B用户,进入仓库中可看到一条Pull Request的一条通知,

在这里插入图片描述

  1. 此时如果你觉得A写的内容很不错也同意采纳,点击【Merge pull request】,即可将A完善的内容同步到你自己的仓库中。此时Pull Request关闭。
    在这里插入图片描述
  2. 如果不赞成A用户完善的内容或是希望A用户按他的思路继续完善一下,即可在下方写上备注信息后点击【comment】,此时这个Pull Request没有关闭。(相当于你两正在通话中)
    在这里插入图片描述
  3. 如果你发现这人反馈给你的信息是违法或是感觉他就是在捣乱,点击【Close and comment】关闭掉这个Pull Request即可。此时如果A还是想给你推送,A用户仍需要重新建立Pull Request。(相当于B挂断了A的电话,但是A仍然可以重新拨打)
    在这里插入图片描述
3.4、假设B同意修改,但是需要A继续完善一下,A用户开始操作了(即执行了3.3中的第3步)
  1. 登录A用户即可看到B反馈的信息:此时A需要再完善一下文本内容,过程可以参考3.2重新完善BBB.txt文件,并进行提交即可。
  2. 此处为了方便不重复我们直接在A的Test_B仓库下修改这个BBB.txt文件,先切换到刚刚新建的分支FZ_A中,编辑BBB.txt文件,此处新增了一行:“我是A用户,我完善了一行内容”
    在这里插入图片描述在这里插入图片描述
3.5、该B用操作了
  1. 由于一开始B用户并没用关闭到Pull Request,所以3.4这个操作完成后,会自动Pull Request到B用户这里。此时我们登录B用户即可看到刚刚A用户又完善后的内容。
    在这里插入图片描述在这里插入图片描述
  2. 此时我们再查看BBB.txt文件即可看到是最新内容:
    在这里插入图片描述在这里插入图片描述

4、A用户直接获得B用户的仓库最新内容

  1. 由于本地仓库是和A的远程仓库关联,所以不能通过之前的语句直接获取B远程仓库最新内容。可以通过命令:git remote add 自己命名的远程仓库名称(不是B远程仓库的名称可以自己随便命名,此处为CK_B) B远程仓库的地址(地址是真实的B用户的远程仓库Test_B的地址)来直接添加B远程仓库。(即本地仓库也关联了B用户的远程仓库)

  2. 通过命令:git remote -v即可查看关联的仓库数量已经地址(git remote:是查看关联的远程仓库,不包含地址)
    在这里插入图片描述

  3. 通过命令:git checkout master切换成主分支(因为刚刚没有在B用户远程仓库中新建其他分支,默认只有一个主分支master)

  4. 通过命令:git fetch 刚刚自己命名的远程仓库名,来将这个名字对应的远程仓库内容拉取到本地仓库中,获取的实际是刚刚我们Pull Request B用户远程仓库Test_Bmaster分支下的内容(此处CK_B对应的是B用户的Test_B远程仓库)。
    在这里插入图片描述

  5. 通过命令:git merge 自己命名的仓库名/master,将B用户Pull Request到Test_B仓库分支master合并到master分支。此时本地仓库中的内容与B用户远程仓库Test_B的内容一致了。

  6. 通过命令:git remote rename 仓库名字 新命名的仓库名。用来重命名仓库的名字

  7. 通过命令:git remote -v(或是git remote)查看现在管理仓库的名称与地址

  8. 通过命令:git remote rm 仓库名字,删除这个管理的仓库;
    在这里插入图片描述

  9. 2

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值