一、Git是什么?
Git是用来做版本控制的。Git是目前世界上最先进的分布式版本控制系统(没有之一),当然把“分布式”三个字去掉也是成立的。
目前市场上的版本控制工具主要分为集中式的版本控制工具和分布式的版本控制工具两种。
1.1、集中式版本控制
集中式的版本控制工具以SVN为代表,它有一个中央服务器控制着所有的版本管理,其他所有的终端可以对这个中央库进行操作,中央库保证版本的唯一性。
如果中央服务器因为某种原因被毁,那么整个项目的版本控制就完蛋了。
集中式版本控制的劣势:
- 容灾性差
- 通信频繁
1.2、分布式版本控制
分布式版本控制的典型就是Git,它的终端可以获取到中央服务器的完整信息,可以在终端做各种操作,获取各种信息而不需要与服务器通信。就算服务器出现问题被毁,各个终端依然有完整的备份,而且Git的各种操作可以全部发生在本地,只需要最终完成后提交服务器即可,而不需要频繁通信。
1.3、Git核心思想
Git作为分布式的版本控制工具,其核心在于以下几个方面:
- 分布式。各个Repo都具有完整的镜像,虽然在协作中通常会指定一台中心服务器,但分布式的思想是Git的第一个重要概念。
- 快照。Git每次记录的都是完整的Repo信息,而不是每个版本之间的差异,这也是Git速度快的原因之一。
- 状态区。只有掌握了不同状态区中的状态,才能了解Git的核心思想。
- 分支。分支是Git最重要的功能之一,利用好分支可以让Git的使用如虎添翼。
二、Git的基本配置
查看Git的版本
$ git --version
git version 2.14.1.windows.1
查看当前的Git配置信息
$ git config --list
core.symlinks=false
core.autocrlf=true
core.fscache=true
color.diff=auto
color.status=auto
color.branch=auto
......
显示所有项目通用的配置信息
$ git config --list --global
user.name=huangxiaolei
user.email=18200399036@163.com
http.sslverify=false
通过指定的配置名来获取单独的配置信息
$ git config user.name
huangxiaolei
通过上面的指令可以查看当前的Git配置。如果没有对Git进行配置的话,需要先对Git的Global参数进行基本的配置后才能使用。
$ git config --global user.name huangxiaolei
$ git config --global --add user.name huangxiaolei user.email 18200399036@163.com
删除一个配置
$ git config --global --unset user.name huangxiaolei
显示所有文件
$ ll -a
total 72
drwxr-xr-x 1 huangxiaolei 1049089 0 十月 15 11:04 ./
drwxr-xr-x 1 huangxiaolei 1049089 0 八月 27 17:27 ../
drwxr-xr-x 1 huangxiaolei 1049089 0 十月 15 11:12 .git/
-rw-r--r-- 1 huangxiaolei 1049089 145 八月 28 17:50 .gitignore
drwxr-xr-x 1 huangxiaolei 1049089 0 八月 27 17:29 .gradle/
drwxr-xr-x 1 huangxiaolei 1049089 0 十月 15 13:52 .idea/
drwxr-xr-x 1 huangxiaolei 1049089 0 九月 6 14:35 app/
......
在.git隐藏文件夹中的config文件保存了一个Git项目的所有配置信息,而个人相关的配置信息都保存在Git的个人配置中。
给一些指令起一个简称或者别名(Alias)以取代原本比较复杂的指令。
$ git config --global alias.st status
通过上面的配置就可以使用st来取代status指令。
一个Git log的Alias。
$ git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset%C(yellow)%d%Creset%s%Cgreen(%cr)%C(bold blue)<%an>%Creset'--abbrev-commit"
学海无涯苦作舟
![](https://img.haomeiwen.com/i4625756/f3d89cd98c6de432.jpg)
网友评论