Y · 2019年08月26日

版本管理·玩转git(日志查看与版本切换)

如果你想更清晰地学习git,你必须要了解3个重要区域。

  • 工作区:即开发者的工作目录
  • 暂存区:修改已被记录,但尚未录入版本库的区域
  • 版本库:存储变化日志及版本信息

当你在工作区进行开发工作时,git会记录你的改动,此时,你使用git add指令,该工作区的内容会被加入到暂存区,你仍然可以对你提交的文件进行撤回操作,然后你使用git commit指令,暂存区的内容会被提交到版本库。

每个文件/目录发生的版本变化,我们都可以追溯,命令为 git log
常用格式:
git log 查看项目的日志
git log <file> 查看某文件的日志
git log . 查看本目录的日志

至于每个命令的具体效果,可以试一试,看看打印信息。
如果感觉日志有点乱,可以输入

git log --pretty=oneline

在这里插入图片描述
可以看到,我们对该项目进行了五次修改,形成了五个版本,现在,我们学习一下版本切换。
我们现在将版本回退到最初始的时候,输入

git reset --hard HEAD^^^^

你想回退几个版本就输入几个"^"符号。
在这里插入图片描述
这个时候版本就被回退到了初始时候,你可以回去看看你的工作目录,看看是不是回到了我们最开始时候的工作状态。
该指令只能用来回退版本,而且它不能清楚地知道指针的指向。所以我们用版本号来进行版本的切换。
版本号很长,但是我们不需要写出全部的版本号,只需要你写的版本号与别的版本不一致就可以。
我们输入

git reset --hard 7255a

就切换到了我们的第四次提交。
在这里插入图片描述
那么接下来我把版本切换到最初始的版本。
我们输入

git reset --hard aaf99

现在我们再输入

git log --pretty=oneline

在这里插入图片描述
会发现,输出日志的时候只显示了第一次提交的日志,这样其它次提交的版本号我就拿不到的,但是,我又想进行版本切换,该怎么办呢?
我们可以输入

git reflog

在这里插入图片描述
通过该条指令我们就可以获得所有版本的版本号了。

推荐阅读
关注数
0
文章数
55
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息