Git的安装与基本使用
Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目,是由 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。
本篇文章的目的在于总结我在使用Git时的些许经验。
1 下载安装Git
首先进入Git官网:https://git-scm.com

进入页面后选择适合自己操作系统的版本下载;

选择32位还是64位,现在的电脑基本都是64位,如果你想仔细了解自己的电脑也可以去查找一番。

下载之后的安装就简单了,选好安装路径后一路点击next就行,这个步骤基本不会出现问题。
2 GIt的第一次使用
第一步 配置自己的的身份
第一次使用你要先给自己配置一下身份,也就相当于这台电脑git的身份证。在任意位置右键,点击git bash,

进入git命令行界面按照下面的指令配置你的用户名和邮箱。
git config --global user.name "your-name"
git config --global user.email "your@email.com"
以后你可以随时同样输入上面任意一条不加上后面的名字邮箱内容来查看你的用户名或邮箱,也可以加上新用户名或新邮箱来重置你的信息。
第二步 创建你的代码仓库
找一个合适的地方,或者创建一个专门存放项目的文件夹,鼠标右键点击git bash进入git命令行;
git init


之后你就在这个文件夹上新创建了一个代码仓库了,点进该文件夹你能发现里面有一个.git的新文件夹,里面便会存放你曾经提交过的版本(如果没看到请打开查看隐藏文件选项)。当你将.git文件夹删除时,也代表你把存储在Git中的代码版本全部删除了。
第三步 提交代码
之后当你在这个文件夹下提交了代码是就可以把你的版本提交,保存在仓库里,相当于拷贝了一个备份,比如我在新建文件夹里加了一个readme.txt,并在里面添加了一句“hello world!”。
然后在Git命令行中输入:
git add readme.txt
git add .
这两个只要输入一个就好,git add +文件名的命令时添加单个文件,而如果你想直接添加所有文件就用git add .命令。(注意:add后面是空格然后英文的句号)
添加完之后表面你已经将文件添加到仓库里,接下来需要做的是提交:
git commit -m "add a readme.txt"
这条命令是提交你之前add的文件,并生成一个新版本。在语句后面双引号中则是填写该版本的备注,比如我添加了一个readmee.txt文件。

第四步 查看代码修改与版本
现在我在readme.txt中将“hello world!”改成两行,第一行“Hello China!”,第二行“I am a men.”
继续在命令行输入:
git status
git diff

status命令会告诉你,你目前这整个项目文件与之前最新的一个版本哪些文件有修改,diff则是告诉你在文件里具体的修改。在Git中,绿色代表增加的内容,红色代表删除或修改了的内容。
然后我们继续:
git add .
git commit -m "change the readme.txt"
git log
先是再一次提交新版本,并备注修改了readme文件。然后git log命令则是查看版本日志。

可以看到git列出来之前提交过的两个全部版本,commit后第一行是版本号,然后后面有作者、提交日期和我们提交的备注信息。
比如说当你编写代码时误删了一些东西又按了Ctrl+S保存,你就可以通过diff来查看你修改了什么地方。而如果你修改了很多东西,用diff查找太慢,你就可以用
git checkout 你想回退的文件的路径(就是diff查看时文件显示的路径)
这样直接就把那个文件回退到最新版本里的状态了。
那万一你已经提交了,却又后悔了,想要变回来呢?那就需要更换版本了。
第五步 版本回退与更换
所谓版本,一是让你对项目一路发展的历程有个把握,二就是可以让你跳转到之前提交的版本了。
之前提到的log命令可以看到所有的版本号,而我们提交版本就只需要reset命令。
git reset --hard HEAD
git reset --hard HEAD^

Git中HEAD是指头部版本,也就是你最新的版本,而加上一个“^”符号就表示上一个版本,那继续加这个符号自然就是上上一个版本了。
而如果你想回退的版本号很前,岂不是要加好多个"^"符号吗,当然不是,你可以在hard后面直接写上你想要回到的版本号,理论上写上版本号前七位就够了,这样就可以跳到指定的版本了。
从这图中我们可以看到现在的版本已经回退到64b527f的版本啦,也就是备注“add a readme.txt”的那一个。如果看官不信的话,我们可以用log命令验证一下,看下现在是不是真的回去了,同时打开readme.txt看下内容是否更改。


果然,我们后来修改的内容已经不见了。
那么还有一个问题,如果你回退版本后又后悔了,想要重新到你回退消失的版本怎么办?我现在看不到那个版本号了!
没关系,输入下述指令:
git reflog

在这里我们可以看到所有的版本更换记录,找到之前的版本号4124dbd,再来reset一下:
git reset --hard 4124dbd
git log

可以看到我们我们已经重新回到修改了readme.txt的那个版本了!
怎么样?Git是不是挺好玩有趣的,反正我接触之后是觉得它的功能实在是强悍无比,彻底喜欢上了这个工具。
Git在本地的基本功能到这里基本就介绍完了,剩下的两个主要功能,分支管理我也不是很熟练,想了解的可以进入廖雪峰大神的网站去学习:廖雪峰的官方网站
而连接远程仓库,我也正在写了一个关于GitHub的文章,有兴趣的可以之后再来观看。