文章目录
- 1、什么是版本控制
- 2、特点
- 3、发展历史
- 4、SVN和Git比较
- 5、Git
- 6、GitHub
- 7、Gitee(国产)
- 8、Git的基础命令
1、什么是版本控制
版本控制系统( Version Control )版本控制是一种管理和跟踪软件开发过程中的代码变化的系统。它允许开发人员在不同时间点对代码进行修改,并记录每次修改的细节。通过版本控制,开发团队可以轻松地协同工作,追踪代码的演变,并在需要时回滚到先前的版本。
2、特点
1、协同,不是自己的文件管理,通常以项目组为单位;
2、文件有一个统一的远程备份,项目组每个成员都可以把自己的文件上传远程服务器(push 推送);
3、代码改动,再次上传,不会覆盖(这就是版本控制的特色,和普通文件管理的不同),会在Git上产生一个新文件,和旧文件的区别就是版本不同;
4、本地文件丢失可以随时从Git仓库中下载(pull 拉取);
5、项目组其他人升级改动了代码,可以检出最新的版本(pull 拉取);
6、多人修改了通一个文件,如:项目的配置文件(merge 合并);
3、发展历史
第一代:自行管理,文件管理
第二代:集中式、多文件管理:VSS、CVS、SVN
第三代:分布式、多文件管理:GIT
微软出品:VSS(Visual Source Safe)开启了版本控制的先河;GIT将其发扬光大。
SVN(Subversion 的缩写)是一个开放源代码的版本控制系统,相较于 RCS、CVS,它采用了分支管理系统。SVN 由 CollabNet 公司于 2000 年资助并发起开发,目的是创建一个更好用的版本控制系统以取代 CVS。
TortoiseSVN:开源软件,在 Windows 上非常受到欢迎的一套客户端软件,它与资源管理器集成得相当不错,可以透过资源管理器在文件或目录上用鼠标右键的菜单完成 SVN 的操作。
Git 是 Linux 作者 Linus 的另一个作品。2002 年他还在使用 Bitkeeper 作为 Linux 内核的版本管理,但因为它是 Copyright 有版权的软件备受质疑,然后 Andrew Tridgell 对 Bitkeeper 进行逆向工程,导致 BitMover 要回收 Linux 开发者的 Bitkeeper 的免费使用权,Linus 一怒之下花了 10 天写出了 Git。
GitHub 成立于 2008 年 4 月,至今成为当下最受欢迎的社交编程及代码托管平台。
2018年6月4日,GitHub被微软75亿美元收购。
4、SVN和Git比较
Git 和 SVN 是从设计理念上就不一样的版本工具,SVN 将代码进行中心化管理,拥有更好的稳定性和安全性,但是去中心化的 Git 却是从 Linux 操作系统的开发需求而来,更加适合多人协作的开源项目。
5、Git
Git 是 Linux 作者 Linus 的另一个作品。2002 年他还在使用 Bitkeeper 作为 Linux 内核的版本管理,但因为它是 Copyright 有版权的软件备受质疑,然后 Andrew Tridgell 对 Bitkeeper 进行逆向工程,导致 BitMover 要回收 Linux 开发者的 Bitkeeper 的免费使用权,Linus 一怒之下花了 10 天写出了 Git。
6、GitHub
GitHub于2008年4月10日正式上线,除了Git代码仓库托管及基本的Web管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。截止到2022-11-17,其注册用户已经超过9400万,托管版本数量也是非常之多,其中不乏知名开源项目Ruby on Rails、jQuery、python等。
7、Gitee(国产)
基于Git的代码托管服务
Gitee(码云)是开源中国于2013年推出的基于Git的代码托管平台、企业级研发效能平台,提供中国本土化的代码托管服务。
其每10分钟同步一次Git。
截止2023年7月,Gitee 已经有 1000万名注册用户和2500万个代码仓库,是中国境内规模最大的代码托管平台。