GIT版本控制工具总结

 

1.安装GITgit

如今的Linux和Unix包括MAC有的已经自带git,没有自带git的话,在Debian或Ubuntu Linux系统下执行sudo apt-get install git或者sudo apt-get install git-core就能够了,MAC的话能够从Xcode里面安装,运行Xcode,选择菜单“Xcode”->“Preferences”,在弹出窗口中找到“Downloads”,选择“Command Line Tools”,点“Install”就能够完成安装了。github

Windows的话能够用msysgit,至关于Windows版的Git,http://msysgit.github.io/下载,而后按默认选项安装便可,安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个相似命令行窗口的东西,就说明Git安装成功!vim

 

2.设置用户名和密码,由于git是分布式版本控制系统,因此每一个机器必须设置用户名和邮箱分布式

git config --global user.name "Your Name"命令行

git config --global user.email "email@example.com"版本控制

注意git config命令的--global参数,用了这个参数,表示你这台机器上全部的Git仓库都会使用这个配置,固然也能够对某个仓库指定不一样的用户名和Email地址。日志

你也能够直接进入git的配置文件中修改code

找到.gitconfig,用vim或者其余的编译器打开该文件,就会看到[user]下面的name和emailget

直接修改完保存退出便可。编译器

 

3.建立版本库

随便找个空闲的地方,创建一个目录,把全部的代码都放进去,(应该说找到你代码所在的文件夹,路径中最好没有中文)

进去那个文件夹执行命令git init(该命令的含义就是这个文件夹就能够跟踪了,这里面的东西修改删除均可以跟踪,也能够恢复)

 

4.把该文件夹下的全部文件都添加到仓库,再把全部文件提交到仓库,顺便写一个说明。好比:

git add 文件名.后缀,或者git add *接着提交全部的文件,git commit -m“操做的详细信息,更改了或删除了什么东西至关于日志”

 

5.以后的每次修改文件(就是每次写完代码)都要git add *,git commit -m”说说今天都干了什么事,代码编到哪里了”

若是忘记了上次所作的修改能够调用git diff或者git log或者git log --pretty=oneline

来查看上次的改动,你还能够经过git status来判断文件的状态,好比有几个文件没有提交,或者有几个文件没有添加

 

6.回退

每次的提交git都会有一串数字来确保与之相对应的一次操做,能够把它看成一个序列号或者版本号,执行git log或者git log --pretty=oneline你就会看到这些数字,每次的数字都不同,这就是说你能够提交N屡次其中的数字和对应的操做内容都不会错,因此就能够根据这些数字进行回退,假如须要回退的话,就能够根据这些数字回退到当时的状态。回退的命令就是git reset ,回退到上一次的版本就是git reset --hard HEAD^,上上一次就是git reset ––hard HEAD^^,还能够回退到前N个版本git reset ––hard HEAD~N,也能够根据那一串数字进行回退,git reset ––hard 那一串数字。还有一种状况更无语,就是回退以后发现不行,再恢复回退以前的状态,这个也是能够实现的,第一种方法就是找到那一串数字,直接用git reset ––hard 那一串数字。第二种方法你能够经过git reflog来查看你的每一次命令,这个命令记录的有那一串数字还有相应的操做。找到那一串数字应该就能够恢复了。

 

7.工做区和版本库

工做区就是这个目录,全部的文件均可以看到更改,就是存储你代码的那个文件夹,而版本库就是当前目录里一个隐藏的文件夹,名字是.git

这个文件夹里面存放的有关于日志还有文件的状态(那些添加了,那些提交了)等等

 

8.撤销工做区的修改

git checkout -- 文件名.后缀名

撤销暂存区的修改(暂存区就是add之后的地方,撤销的话先从暂存区取出来,再接着撤销工做区的文件)

git reset HEAD file,git checkout -- 文件名.后缀名

 

9.删除文件

若是该文件没有添加到暂存区的话,那么直接rm删掉就能够了,若是该文件提交到版本库里的话,只在工做区删除的话,git会提醒你工做区里的文件和版本库里的文件不符,那么要么你把版本库里的也给删掉,要么就从版本库里在拉一份过来,拉过来的命令是(git checkout —文件的名字.后缀),在版本库里删除文件的命令是(git rm 文件名.后缀,记得还得再提交一次)。

相关文章
相关标签/搜索