git版本控制器有三个重要区域
工作区:开发者的工作目录
暂存区:修改已被记录,但尚未录入版本库的区域
版本库:存储变化日志及版本信息
查看版本日志
命令为:git log
常用格式:
git log #查看项目的日志
git log 文件名称 #
git log . #查看本目录的日志
由此图可看出,git版本号由随机的数字和字符串组成(svn版本号为按照数字顺序排列)
这样看log信息比较全面,但是有些凌乱,很多信息不是每次都需要看的,这时可以使用:
git log --pretty=oneline
让日志单行显示
前面表示版本号,后面为每个版本的注释
版本切换
git有两种切换版本的方法
方法一:
通过git log --pretty=oneline命令,查看所有版本信息
使用:git reset --hard HEAD^,回退
其中HEAD后面“^”的数量,表示要回退到从当前版本开始计算的第几个版本,如下图所示
这样做的弊端是只能向前回退,不能向后切换,若只回退一两个版本的情景下,这种做法应该很便捷
方法二:
使用:git reset --hard 版本号缩写
其中的版本号缩写取每个版本号的前五六位字符串即可,不能太短,要能表示独一无二的版本,也不用太长太啰嗦,推荐五六位即可
这种方法可向前或向后,随意切换版本
操作记录
倘若我们从最新版本,切换到第一个版本,再查看版本信息时,则之前的版本不再显示,因为git log --pretty=oneline命令只显示当前版本之前的版本,此时已经为第一个版本,看不到其它的版本号,怎么解决呢
git提供了方法,查看版本变化和操作记录命令:git reflog
这时会列出操作记录以及版本号前几位,这样就可以随意游走在各版本之间