带你轻松玩转Git--分布式版本控制系统

    说起来也挺有意思,笔者原先接触Git的原因不是想学习Git本身的版本控制技术,而是为了学习计算机英语,为了能够锻炼学习原始英语视频的能力,于是从Lynda上面下载了一个关于Git系列的英语视频教程,Git之旅便从此拉开序幕.

 

         在很早之前接触过Git,但当时也只是蜻蜓点水,并没有进行深入的了解.接下来我要做的是将笔者学习Git的一些经历和经验与大家分享,分享是一种更有效的学习方式.


         我学习Git的方式是主要通过以下三种进行的:

  • LyndaGit视频.
  • Git官方手册等参考文档.
  • 实际操作.

      由于Git自身优秀的特点以及CVS,SVN的局限,现在很多的企业都已经着手开始向Git进行转变.所以学习Git 也是大势所趋,紧跟时代潮流.

 

      说到版本控制,相信大家都不陌生,最简单的版本控制例如我们经常用的Ctrl+ZCtrl+Z.版本控制的核心是跟踪变化.为了能够从一个宏观来了解Git,我们需要简单的了解一下版本控制的历史.按照时间的流程如下:


  1. Source Code Control System(SCCS)
  2. Revision Control System(RCS)
  3. ConcurrentVersionsSystem(CVS)
  4. Apache subversion(SVN)
  5. BitKeeper SCM
  6. Git

 

      更多读者比较熟悉的是CVSSVN,这些都属于集中化的版本控制系统(Centralized Version Control System) CVCS,它能够有效的解决不同系统上的开发者协同工作.不同的人都是直接面向中心库进行操作.

 

带你轻松玩转Git--分布式版本控制系统_第1张图片

 

 

        Git是属于分布式版本控制系统(Distributed Version Control System)DVCS . DVCS的特点是所有的仓库都是完整的镜像,进一步解释,假如版本控制服务器发生了故障,那么我们可以用任何一个本地仓库进行恢复.

 

带你轻松玩转Git--分布式版本控制系统_第2张图片

 

         如上图,如果Server Computer发生了故障,我们可以从ComputerA 或者Computer B进行完整的恢复.它不再是提取最新版本的文件快照,而是原始仓库的完整镜像.而这仅仅是分布式版本控制诸多特点中的其中一个.对比SVN等集中式版本控制系统,假如中央服务器发生故障,在故障期间谁也没有办法提交或者更新

分布式版本控制系统除了Git之外,还有Mercurial,Darcs.


       以上内容和大家一起从版本控制系统的角度来了解Git,在接下来的文章中将带领你一起去玩一玩Git,带你快速的去创建一个Repository.



你可能感兴趣的:(带你轻松玩转Git--分布式版本控制系统)