使用Git与Github多人协同开发流程

本文介绍了一个典型的Git与Github多人协同开发场景,详细说明了主开发者如何创建并维护项目,以及辅助开发者如何同步更新并提交代码。

使用Git与Github多人协同开发流程

  假设目前有两个开发者A和B共同完成一个项目,首先确定一个主开发者,这里就假定为开发者A了。

  首先开发者A在自己的Github上创建一个远程仓库,然后再在本地创建一个本地仓库,再将本地和Github关联起来,干完这些工作后开发者A就开始愉快地写代码(作为主开发者可能就先把大体框架搭建起来),框架搭完后将代码提交到本地仓库中,然后push到自己的Github远程仓库上,由于A是主开发者那他肯定是项目的管理者,所以他的Github远程仓库可以是为源仓库,那么开发者B自然而然就是拉下手的。

  开发者A将自己写的代码推送(push)完了之后,然后就是开发者B大显身手的时刻了,开发者B克隆(clone)了源仓库,也就是开发者A的之前push到自己的Github上的项目,B大刀阔斧地写完代码后直接一个push,咦...怎么推送不上去,提示什么权限问题,你当然push不上去,因为那是别人的仓库(而且你也没有关联),要是你直接能推送上去,那代码世界岂不要毁灭了。

  好吧,正确的做法是:开发者B先Fork开发者A的Github上的仓库,Fork的就相当于建立一个分支(拷贝别人的项目),Fork了之后开发者A的Github上会出现一个和开发者A一模一样的仓库,然后开发者B在clone自己的Github上的仓库到本地,这样就可以开工了,写完代码后先push到自己的Github远程仓库中,就在此刻机智的同学会发现:如果在开发者B写完后准备push的时候,勤奋的开发者A又同时写了其它模块并且已经push到Github上了,这可咋办哩!

  别方,Git早已为我们想好了一切,此时的话要做的工作就是将开发者A远程仓库的更新同步到开发者B的本地,那么fetch就可以闪亮登场了,fetch就是从远程仓库中抓取本地仓库中的没有的数据,别急,fetch仅仅只是抓取数据,之后还得用merge合并一下分支,哇...合并成功没有发生冲突,这样B终于可以推送了,最后再在Github上Pull request一下,就是给主开发者A发送一个请求,请求合并项目,最后A看了一下B写的功能,觉得挺不错的,然后同意了开发者A的request(merge),就这样两人愉快的协作着......

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值