Git简介
Git是目前世界上最先进的分布式版本控制系统。
其最核心的功能是能够进行版本跟踪,也就是说你每次的修改系统都会将其记录下俩,这对于项目的管理是非常高效的。
Git的由来
Linus大神在1991年创建开源的Linux操作系统,随着Linux系统不断的发展完善,已经成为了最大的服务器系统软件。
Linus虽然创建了Linux,但其代码是由许许多多分布于世界各地的开源志愿者们积极贡献自己的代码而来,但是如此众多的开发者参与其中,Linux的代码管理成了一个很重要的问题。
在2002年以前,志愿者们把源代码通过diff的方式发给Linus,Linus通过手工方式合并代码。
到了2002年,Linux系统已经发展了十载,代码库已经非常巨大,很难继续以手工的方式进行管理了。社区的弟兄们也对这种方式表达了强烈的不满,Linus选择了商业的版本控制软件BitKeeper,BitKeeper的东家BitMover公司出于人道主义精神,授权Linux社区免费使用这个版本控制系统。
安定的局面一直维持到2005年,Linux社区牛人聚集,难免沾染一些梁山好汉的江湖气息。开发Samba的Andrew试图破解BitKeeper的协议,被BitMover公司发现了,于是BitMover公司收回了Linux社区的免费使用权。
也许Linus向BitMover公司道个歉,保证以后严加管教自己弟兄,这事可能就过去了,但是,实际情况是这样的:Linus花了两周时间用C写了一个分布式版本控制系统,也就是Git。一个月之内。Linux系统已经由Git管理了。
Git命令
创建版本库
1.创建一个名为learngit的目录(当然命名可以任意)
1 | $ mkdir learngit |
2.将learngit变成Git管理的仓库
1 | $ git init |
Git就把仓库给建好了。并且当前目录下会多一个.git的目录,这个目录是Git来跟踪管理版本库的,没事不要手动修改目录里面的文件,如果改乱了,有可能会把Git仓库破坏。
把文件添加到版本库
所有的版本控制系统,只能跟踪文本文件的改动,比如TXT文件,网页,所有的程序代码等等。版本控制系统会告诉你每次的改动。
需要注意的是,Microsoft的Word文档格式是二进制格式,因此,版本控制系统是没法跟踪Word文件的改动的,如果要真正使用版本控制系统,得用纯文本方式编写文件。文本是有编码的,一般建议使用标准的UTF-8编码,所有语言使用同一种编码,既没有冲突,又被所有平台支持。
1 | $ git add readme.txt # 将文件添加到仓库 |
Git可以一次性提交很多文件,比如
1 | $ git add file1.txt |
1 | $ git status |
上述命令可以让我们时刻掌握仓库当前的状态。
1 | $ git diff readme.txt |
这个命令可以看出文档做出了什么改变