目的:使用git进行版本控制和项目管理
背景:Git由Linux使用C语言开发的分布式版本控制系统
区别:CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统, 集中式版本控制系统的版本库是集中存放在中央服务器的,而干活的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送到中央服务器。其缺点是必须联网,可能会提交速度过慢等问题。 分布式版本控制系统没有“中央服务器”,每个人的电脑上都是一个完整的版本库,当你改了文件A,你同事也改了文件A,二者只需把各自修改推送给对方,就可以互相看到对方的修改了。相比集中式,分布式安全性更高,因为每个人电脑里有完整的版本库,一个电脑坏了可以拷贝其他人的。而集中式如果中央服务器出问题,所有人就没法干活了。
(实际使用分布式版本控制系统时,很少两人之间电脑上推送版本库修改,因为可能你们俩不在一个局域网内,两台电脑互相访问不了,也可能今天你的同事病了,他的电脑压根没有开机。因此,分布式版本控制系统通常也有一台充当“中央服务器”的电脑,但这个服务器的作用仅仅是用来方便“交换”大家的修改,没有它大家也一样干活,只是交换修改不方便而已。)(此外,Git还具有强大的分支管理)
安装: sudo apt-get install git(linux系统)
创建版本库:
第一步:创建一个空目录---mkdir learngit
第二步:进入目录,对目录进行初始化---git init
(当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。.git目录默认是隐藏的,用ls -ah命令就可看见。)
注意所有的版本控制系统只能跟踪文本文件的改动,如txt文件、网页、程序代码等,但对于图片、视频、Microsoft中的word文档都是二进制文件,版本控制系统是无法对其进行跟踪,建议使用UTF-8编码
把文件添加仓库:
准备:编写readme.txt文件,内容随你,放到learngit目录或其子目录
第一步:git add readme.txt(添加文件到仓库)
第二步:git commit -m "wrote a readme file"( 把文件提交到仓库)
(文件提交成功后,显示file changed表示有多少个文件被改动,insertions代表插入多少行内容)