Git学习笔记06-版本回退

在实际中,向版本库提交多次后,几千行代码肯定不记得每次都改了什么,可以使用git log来查看提交日志。也就是git commit -m 后面填写的这部分内容


也可以使用git log --pretty=oneline让日志显示的简略点,--后面没空格的。


黄色的很长的这一段是commit id也就是版本号

在Git中,使用HEAD表示当前版本,上一个版本就是HEAD^,再上一个就是HEAD^^。也可以用HEAD~100表示往上100个版本

使用git reset命令版本回退,--hard参数之后再说。


使用git log可以看到修改内容的那个版本没有了


但是回退之后又后悔了,想要回到修改内容的版本怎么办。如果当前命令框还没有关闭,找到修改内容那个版本对应的commit id

使用 git reset --hard commit id。就可以更改回去。commit id 可以只输入前面几位


可以看到修改部分内容又回来了

但是如果命令窗口被关闭了该怎么办?使用git reflog可以查看自己历史操作命令


Git的版本回退速度非常快,因为Git内部有一个指向当前版本的HEAD指针,当版本回退时。仅仅只是把HEAD的指向改变了,然后顺便把工作区更新了,所以把HEAD指向哪个版本,哪个就是最新版本。

小结:

HEAD指向的版本就是最新版本,因此使用 git reset --hard commit id可以在不同版本之间切换

git log可以查看提交历史,方便确认要回到哪个历史版本

git reflog可以查看命令历史,方便确认要回到哪个未来版本

原文地址:https://www.cnblogs.com/myal/p/9376450.html