从零玩转Git版本控制工具(一)

145 阅读2分钟

版本控制的概念

01-版本控制的起源

现在的软件项目通常都是共同的一个小组来进行研发

针对团队开发需要解决以下问题

  • 备份多个版本,费时间,费空间
  • 难于恢复至以前正确的版本
  • 难以解决代码冲突问题
  • 难于追溯问题代码的修改人和修改时间(甩锅) 无法进行权限控制
  • 项目版本发布困难

这个时候源代码管理工具也就应运而生

02-什么是版本控制

版本控制是维护工程蓝图的标准做法,能追踪工程蓝图从诞生一直到定案的过程,是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统

  • 如果是团队开发,使用版本控制是强制性的
  • 如果是单人开发,也强烈建议现在就开始使用版本控制

使用版本控制的好处:

  • 不会对现有工作造成任何损害
  • 不会增加工作量
  • 添加新的功能扩展,会变得更加容易

03-常见的版本控制工具

  • CVS版本控制之父
  • SVN集成式版本控制之王者
  • Git分布式版本控制之伟大杰作(推荐)

04-分布式和集中式的最大区别

  • 在集中式下,开发者只能将代码提交到服务器,在分布式下,开发者可以本地提交
  • 在集中式下,只能远程服务器上有代码数据库,在分布式下,每个开发者机器上都有一个代码数据库

Git和SVN的简单对比

  • 速度
    • 在很多情况下,GIt的速度要远远比SVN快
  • 结构
    • SVN是集中式管理,Git是分布式管理
  • 其他
    • SVN使用分支比较笨拙,GIt可以轻松拥有无限分支
    • SVN必须联网才能正常工作,Git支持本地版本控制工作
    • 旧版本的SVN会在每个目录下放一个.svn文件夹(冗余的代码更多),而Git只会在根目录下放一个.git文件夹