博客
关于我
<Git命令使用>当前版本,历史版本,版本切换
阅读量:416 次
发布时间:2019-03-06

本文共 797 字,大约阅读时间需要 2 分钟。

 

添加修改仓库中文件,用到的git命令是

git add <xx>

git commit -m "xxx"

首先要说一下,在操作系统文件系统中更改仓库目录里的文件只是更改文件而已,而git管理系统并没有任何变化,我们使用git add和git commit命令是在改变git版本管理系统。

使用git log命令可以显示从最近到最远的提交日志,加上 --pretty=oneline参数可以精简显示内容。

git内部有个指向当前版本的HEAD指针,当回退版本时,Git仅仅是把HEAD指向你要退回的指定版本。版本回退使用git reset命令。

git reset --hard HEAD^            //恢复到上个版本。

git reset --hard e475a

当前版本是HEAD,上一个版本是HEAD^,上上一个版本是HEAD~2,往上100个版本是HEAD~100,以此类推。当然,--hard后面的参数有两种,可以是HEAD^指针,也可以是版本号的前几位。

(这里简单说一下,版本号也就是commit id,是一个SHA1计算出来的一个非常大的数字,用16进制表示)

 如果我们使用git reset回到了过去的某个版本,再使用git log查看提交日志,可以发现当前版本之后的版本都看不到了,这不是说那些后来的版本都删除了,只是因为git log指令本身只显示从HEAD指针往前的提交历史。我们依然可以使用git reset --hard 指令回到后来的某个版本。另外还可以使用git reflog命令查看全部提交和版本切换历史。

 

总结:

HEAD指向的版本就是当前版本,使用命令git reset --hard <commit_id>可以在历史版本间穿梭,同时仓库内的文件也会恢复到指定历史版本。

git log  查看从HEAD指针往前的全部历史版本。

git reflog 查看命令历史。

转载地址:http://xkbuz.baihongyu.com/

你可能感兴趣的文章
poj 2187 Beauty Contest(凸包求解多节点的之间的最大距离)
查看>>
poj 2492A Bug's Life(并查集)
查看>>
POJ 2312Battle City(BFS-priority_queue 或者是建图spfa)
查看>>
ZZUOJ 1199 大小关系(拓扑排序,两种方法_判断入度和dfs回路判断)
查看>>
java中自动装箱的问题
查看>>
zyUpload+struct2完成文件上传
查看>>
程序员的开发文档
查看>>
mybatis generator修改默认生成的sql模板
查看>>
cglib动态代理导致注解丢失问题及如何修改注解允许被继承
查看>>
算法 - 如何从股票买卖中,获得最大收益
查看>>
机器学习-KNN算法原理 && Spark实现
查看>>
大数据开发-Spark-拷问灵魂的5个问题
查看>>
算法 - 链表操作思想 && case
查看>>
linux下的bash shell
查看>>
运维------术语名词
查看>>
并发编程实战-ConcurrentHashMap源码解析
查看>>
C#之反射、元数据详解
查看>>
通俗易懂设计模式解析——单例模式
查看>>
通俗易懂设计模式解析——抽象工厂模式
查看>>
.NET日志记录之——log4net划重点篇
查看>>