github代码如何定位到历史版本(历史commit点)


关于使用git在本地进行版本管理见linux下的版本管理

工作项目中git流程实操见git简明实操模板

想我们在写代码时候,数次修改并提交commit,如果在这个过程中我们后悔了,想回到当初的某一个commit点应该如何实现呢?

如果会用git bash的话,肯定首选命令行模式

三种方式:

1】以目标commit为基础新创建一个分支,并切换到分支上去,这样并不破坏base分支上的任何提交内容,包括你目标commit之前的提交,以及目标commit之后的提交。

例子:你有一个base分支,上面有1/2/3/4四个commit,你现在突然后悔提交了3/4两个commit,或者某种原因你需要以2commit为基础,进行另外某个功能的开发。这时候方法1执行 git checkout 2commitID -b div就是以base分支的2commit为基础,创建了子分支div,并切换到子分支上去,原来的base分支并没有受到影响,这时候你也就能在子分支div上看到你的历史代码了。

2】在当前分支上撤销目标commit之后的所有提交,类似于系统还原

例子:还是上面的base分支有1/2/3/4个commit,这时候执行git reset –hard 2commitID 就是放弃3/4commit,回退到2commit,这时候你也能看到历史代码,但是在2 commit之后的 3/4commit 就永久的丢失了(可以通过一些指令找回来的)。

3】以执行过的指令为目标,进行撤销操作,类似于第二种方法

git log (branch) 查看commit的ID号
git checkout commitId -b 新branch名称 (在指定commit的基础上创建新分支)

git log (branch)
git reset –hard (commit id) 版本回滚

git reflog
git reset –hard (command id) 命令撤销
如果刚开始接触git,对git的操作不熟悉,只习惯图形界面,那么按照以下方式进行操作

img

img

img

————————————————
版权声明:本文为CSDN博主「半截木头渡海洋」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ljl86400/article/details/80051507