介绍:GitGuide 致力于打造最易懂的 Git 版本控制入门教程,
让天下没有难学的 Git 版本控制
本文已经收录至开源项目GitGuide
项目地址:https://github.com/coderit666/GitGuide
给我一个 Star! ⭐
如果您喜欢或者打算使用这个项目来学习或者来开始你的 Git 版本控制
学习之路,给我一个 三连
,谢谢!
版本控制的起源
- 现在的软件项目通常是由一个研发小组共同分析、设计、编码、维护以及测试的
- 针对团队开发需要解决以下问题:
- 备份多个版本,费空间,费时间
- 难于恢复至以前正确版本
- 难以解决代码冲突困难
- 难于追溯问题代码的修改人和修改时间
- 无法进行权限控制
- 项目版本发布困难
- 源代码管理工具就是为了解决上述问题应运而生的
版本控制(Revision Control)
- 是维护工程蓝图的标准做法,能追踪工程蓝图从诞生一直到定案的过程。是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统
- 如果是团队开发,使用版本控制是强制性的!
- 如果是单人开发,也强烈建议现在就开始使用版本控制!
- 使用版本控制可以:
- 不会对现有工作造成任何损害
- 不会增加工作量
- 添加新的功能拓展时,会变得更加容易
常见版本控制工具
- CVS 开启版本控制之门
- CVS 1990年诞生,远古时代的主流源代码管理工具
- SVN 集中式版本控制之王者
- SVN:又称subversion,是CVS的接班人,是一款
集中式
源代码管理工具。曾经是绝大多数开源软件的代码管理工具(google code),前几年在国内软件企业使用最为普遍
- SVN:又称subversion,是CVS的接班人,是一款
- GIT 分布式版本控制之伟大作品
- GIT:一款
分布式
源代码管理工具,目前国内企业几乎都已经完成了从SVN到GIT的转换
- GIT:一款
-
集中式源代码管理
-
分布式源代码管理
-
分布式和集中式的最大区别在于:
- 在集中式下, 开发者只能将代码提交到服务器, 在分布式下, 开发者可以本地提交
- 在集中式下, 只有远程服务器上有代码数据库, 在分布式下, 每个开发者机器上都有一个代码数据库
-
SVN(集中式)
-
GIT(分布式)
Git和 SVN 的简单对比
- 速度
- 在很多情况下,git的速度远远比SVN快
- 结构
- SVN是集中式管理,git是分布式管理
- 其他
- SVN使用分支比较笨拙,git可以轻松拥有无限个分支
- SVN必须联网才能正常工作,git支持本地版本控制工作
- 旧版本的SVN会在每一个目录置放一个.svn,git只会在根目录拥有一个.git
GIT简介
- GIT是一款自由和开源的
分布式
版本控制系统,用于敏捷高效
地处理任何或小或大的项目 - 在世界上所有的分布式版本控制工具中,git是最快、最简单、最流行的
- 是Linux之父李纳斯的第二个伟大作品
- 2005年由于BitKeeper软件公司对Linux社区停止了免费使用权。