github协同开发

协同开发

github协同开发(多人共同开发)大致有两种方式:

  1. 合作者
  2. 组织

合作者

1112571-20180801085313763-595158425.png
1112571-20180801085432193-294012548.png

组织

创建一个组织,组织内的成员可以一起开发多个项目。
1112571-20180801090030301-1063217277.png

1112571-20180801090102698-201357440.png

1112571-20180801090204506-1964509779.png

怎么协同开发

有两点:

  1. 所有人不能在dev分支进行开发(如果两人都在同一分支开发,在公司都提交,A晚上回家拉代码下来想测试自己的一部分代码,发现测不了,因为dev还有B的未完成的可能有bug的代码)
  2. 每个人单独开一个属于自己的分支,开发完毕再合并到dev分支

1112571-20180801093245933-2075669645.png

1112571-20180801093304274-784277272.png

1112571-20180801093333848-493081399.png

现在问题来了,A开发完毕,就合并到dev然后push后下班回家,B开发完毕也合并到dev,然后也进行push操作

1112571-20180801093947142-1155857992.png
A把本地dev分支push到github之后高高兴兴地回家了,此时B在merge到dev之后想要push,顿时傻眼了,出错了(A: 哈哈,幸亏我提交的早,第一个提交永远不会出问题)
1112571-20180801094342003-1465201679.png
这时怎么解决?肯定是根据提示先pull下来,在本地合并之后再push推到github。此时又出现一个问题,如果在合并过程中代码如果出现冲突怎么办?解决办法:

  1. 合并的时候所有开发人员都必须在场,不然B哪知道A的部分,出现冲突后B如果自作主张把A的部分全删了,这明显不行,需要A和B一起来处理冲突
  2. 合并时间不能太长,如果很长时间合并一次,那么冲突可能就很多,处理冲突就是一个大工程。

代码review: 一般是创建一个review分支,初学者的代码一般是合并到review,经过组长或领导审核通过之后才有可能合并到dev分支。

fork项目

github有很多开源的优秀的代码,如果想要把这些代码也复制一份到我的仓库,那我就可以用来学习或进行二次开发,fork就能帮我们完成这件事。
1112571-20180801095636678-1880515216.png

1112571-20180801095758231-2015973462.png

如果把网上源码fork之后,发现写的有bug,想要提建议,此时就用new pull request
1112571-20180801095928424-969659229.png

1112571-20180801100245547-1236172719.png
然后等待原作者是否同意这个pull request,如果同意那么在作者的源代码中就推出现我提交的功能

其他

忽略文件

当你提交代码的时候不要把所有的代码都提交,尤其是你一些sql相关的文件(否则别人拿到你数据库地址登进去删库),还有pycharm自动生成的隐藏文件
在和.git同一级目录下,创建一个.gitignore的文件,里面写上*.sql,那么git就不会帮我们监测以sql结尾的文件的变化,自然也不会帮我们上传这些文件到github。windows下创建 .gitignore文件:ren .gitignore.txt .gitignore
1112571-20180801101709669-743021596.png

当然,github已经帮我们写好了python版本的.gitignore文件,我们在创建仓库的时候就可以进行勾选
1112571-20180801101913979-1082103350.png

以斜杠“/”开头表示目录;
以星号“*”通配多个字符;
以问号“?”通配单个字符
以方括号“[]”包含单个字符的匹配列表;
以叹号“!”表示不忽略(跟踪)匹配到的文件或目录;

版本相关

1112571-20180801103956566-1718271089.png
我们发现django源码有很多版本,那么我们自己写的代码怎么制作版本呢

1112571-20180801104046030-1537876670.png

1112571-20180801104112113-275448843.png

1112571-20180801104310354-760344899.png

1112571-20180801104322938-569864104.png

想要下载对应版本: git clone -b v1.0 资源地址

git tag -a v1.0 -m '版本介绍'        本地创建Tag
git show v1.0                       查看
git tags -n                         查看本地Tag
git tag -l 'v1.4.2.*'               查看本地Tag,模糊匹配
git tag -d v1.0                     删除Tag
git push origin :refs/tags/v0.2     更新远程tag
git checkout v.10                   切换tag
git fetch origin tag V1.2
git push origin  --tags
git pull origin  --tags

转载于:https://www.cnblogs.com/longyunfeigu/p/9399350.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值