参考链接cgitee及github的区别_Mr丶吕的博客-CSDN博客_gitee和github
git、gitee、github、gitlab 区别以及功能_有没有人告诉你的博客-CSDN博客_git gitee github
svn是集中式版本控制
git是分布式版本控制
gitHub是国外的,访问比较慢。全英文,提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能,托管了很多知名大项目,私有仓库和共有仓库,私有仓库一般收费。
gitee是国内的,中文版,访问稳定,集成了代码质量检测、项目演示等功能。对于团队协作开发,Gitee 还提供了项目管理、代码托管、文档管理的服务,5 人以下小团队免费,项目不能部署在自己的服务器上。
gitlab打可以免费搭建私有仓库,并且可以部署在自己的服务器上。gitlab不仅有github的功能,还有更多的优秀特性,比如权限设置。一般企业内部软件产品用gitlab是更好的选择,如果是开源产品,一般放在github上。
另外简单说一下Gerrit
Gerrit 是建立在Git版本控制系统之上并且基于Web的一个免费开源的轻量级代码审查工具。
作为开发者和Git之间的一层屏障,不允许直接将本地修改内容同步到远程仓库中。
与Jenkins集成后,可以在每次提交代码后,人工审核代码前,通过Jenkins任务自动运行单元测试、构建以及自动化测试,如果Jenkins任务失败,会自动打回本次提交。
一般Git、Gerrit和Jenkins集成后的使用流程
- 开发者提交代码到Gerrit
- 触发对应的Jenkins任务,通过以后Verified加1
- 人工审核,审核通过后code review加2,触发对应的Jenkins任务
- 通过以后确认本次提交,Gerrit执行与Git仓库的代码同步操作
- 代码进入Git仓库
这些是通过一些博客简单了解一下svn,git,具体使用还不熟练,用过之后再来补充。