Git 分布式版本控制系统
一、百度百科
是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 [1] 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。
二、使用
1.安装完git,第一步设置签名
1.1 项目级别
git config user.name admin_pro
git config user.email admin_pro@github.com
1.2 全局级别
gti config --global user.name admin_glb
git config --global user.email admin_glb@github.com
2.设置密钥
三、工作常用命令
示例图:
1.添加
# 将工作区的文件提交到暂存区
$ git add .
2.提交
# 将暂存区内容提交到本地库
$ git commit "My first commit README.MD" README.MD
3.查看历史版本记录
3.1 一行显示
$ git log --pretty=oneline
示例图
3.2 简洁显示
$ git log --oneline
示例图
3.3 查看回朔到指定的版本(移动到当前版本需要多少步)
$ git reflog
示例图参数说明:
HEAD类似指针
HEAD@{1} : 表示移动到当前版本需要多少步,依此类推。
示例图:
3.4 图形显示,直观
$ git log --greph
4.版本的前进和回退
4.1 基于索引值 开发常用,掌握
$ git reset --hard 唯一索引值
# 例如 git reset --hard e5fee99
4.2 使用 ^ 符号,只能回退
$ git reset --hard HEAD^
# 例如 git reset --hard HEAD^ ,几个 ^ 表示后退几步
4.3 使用 ~ 符号,只能回退
$ git reset --hard HEAD~n
# 例如 git reset --hard HEAD~3 ,n表示回退多少步,~3表示回退3步
4.4 reset的三个参数比较 了解就可
soft:
- 仅仅在本地库移动HEAD
mixed:
- 在本地库移动HEAD
- 重置暂存区
hard:
- 在本地库移动HEAD
- 重置暂存区
- 重置工作区
4.5 删除文件找回![本地库删除找回]、[暂存区删除找回]
虽然删除了,只要添加到暂存区,就能找回历史版本。
$ git reset --hard 索引值
# 例如 git reset --hard e5fee99
演示删除操作
$ rm server.xml
[前提是:文件存在时的状态提交到本地库了]
找回[在本地库删除的文件]
删除操作已经提交到本地库
# 查看历史版本
$ git reflog
# 回退到删除版本的上一个版本,就可以找回
$ git reset --hard 索引值
# 添加到暂存区
$ git add fileName
[前提是:文件存在时的状态提交到本地库了]
找回[在暂存区删除的文件]
删除操作尚未提交到本地库
$ git reset --hard HEAD
5.比较文件
将工作区的文件和暂存区文件进行比较
$ git diff [fileName]
$ git diff [本地库历史版本][fileName]