目前世界上最先进的分布式版本控制系统(没有之一)

诞生:Linux社区用C语言编写

一、集中式Vs分布式

集中式版本控制系统:

1、原理:版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器

2、比喻 :中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆

3、缺点:必须联网才能工作

4、实际应用:

开源免费的:

CVS(最早的开源而且免费的集中式版本控制系统)由于CVS自身设计的问题,会造成提交文件不完整,版本库莫名其妙损坏的情况

SVN(修正了CVS的一些稳定性问题,是目前用得最多的集中式版本库控制系统)

收费的:IBM的ClearCase(以前是Rational公司的,被IBM收购了)安装大,运行慢 

分布式版本控制系统:

1、原理:分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,工作的时候,就不需要联网了,每个人电脑上都有一个完整的版本库,当我在自己电脑上改了文件A,同事在他的电脑也上改了文件A,我们只需把各自的修改推送对方,就可以互相看到对方的修改了。这样就实现了多人协作。(实际使用时很少在两人之间的电脑上推送版本库的修改,因为必须要在一个局域网内,两台电脑才能互相访问)

2、优点:安全性提高很多,每个人电脑里都有完整的版本库,某一个人的电脑坏掉了直接从其他人那里复制一个就可以。而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了

3、实际应用:开源免费的:GitHub,是最快、最简单也最流行。商用的:BitKeeper,Mercurial和Bazaar等

二、GitHub安装

Linux上、Mac OS X、Windows都可以,因为我使用的是windows,所以重点介绍windows

步骤:

1、直接从官网下载:https://git-scm.com/downloads

2、安装完成后,找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西说明安装成功

3、最后一步设置,在命令行输入
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

原因:因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址

注意:
github的很多语句都是有空格,我之前就是因为name和”之间没加空格,卡了很久,细节一定要重视,成功之后的样子

凌风@▒▒▒plus MINGW64 /d/GitWarehouse/learngit (master)
$ git config --global user.name "xxx"

凌风@▒▒▒plus MINGW64 /d/GitWarehouse/learngit (master)
$ git congif --global user.email "xxx.com"
git: 'congif' is not a git command. See 'git --help'.

The most similar command is
        config

凌风@▒▒▒plus MINGW64 /d/GitWarehouse/learngit (master)
$ git config --global user.email "xxx.com"

凌风@▒▒▒plus MINGW64 /d/GitWarehouse/learngit (master)
$ git commit -m"wrote a readme file"
[master (root-commit) 5ca1391] wrote a readme file
 1 file changed, 3 insertions(+)
 create mode 100644 readme.tet

注意windows下目录要全英文才行,不然很可能出现很多问题,git的默认主目录是可以修改的!具体方法我就不讲述了,大家自行百度哦

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐