您的位置:首页 > 其它

Git入门(4)-版本回退

2016-07-20 08:42 411 查看
[align=center]Git入门(4)-版本回退[/align]
[align=left]在Git入门(3)中学会了怎样去修改文件,你可以去练习着多修改几次,并且提交。当你想查看你都修改过几个版本时,输入命令git log:[/align]

$ git log

commit 57e21750932ead81de35e28c79974aae59f3801d

Author: qinzishuai <qzs531156@163.com>

Date:   Tue Jul 19 22:15:23 2016 +0800

    slidingmenu

commit 3b1d7b50b4932d2b29a5a558fe0771fc06fb5aac

Author: qinzishuai <qzs531156@163.com>

Date:   Tue Jul 19 22:04:15 2016 +0800

    对话框合集

离你最近的版本是你最新修改的版本,git log命令是显示你最近到最远的日志,如果嫌输出的信息太多,看的很乱可以输入命令:
$ git log --pretty=oneline


这个命令输出的结果就是每个版本就一行,看的很方便。

版本回退:
假如我们想把readme.txt文件退回到上一个版本,在Git中,HEAD表示当前的版本,HEAD^表示上一个版本,上上个版本就是HEAD^^,假如想回退到第100个版本时,就是HEAD~100.
现在我们要把readme.txt回退到上个版本,就可以使用命令:git reset 如下:

$ git reset --hard HEAD^
HEAD is now at ea34578 add distributed


回退完之后我们输入cat readme.txt表示查看当前的文件内容
$ cat readme.txt


[align=left]输入完看一看是不是回退后的版本内容。[/align]
[align=left]
[/align]
[align=left]注意:[/align]
[align=left]当我们用git log查看时,发现我们回退前的那个版本消失了,我们有时会后悔回退,那怎么办呢。在Git中,不要担心,我们可以通过commit id来解决:[/align]
[align=left]首先我们可以git reflog 这是记录你的每一条命令,然后我们会发现每条命令前面都有一串数字或字母,比如:[/align]

3628164 HEAD@{1}: commit: append GPL


[align=left]这段命令的commit id就是3628164,我们找到了id,就可以回到这个版本了,输入下面命令就可以回了:[/align]

$ git reset --hard 3628164


[align=left]
[/align]
[align=left]
[/align]
[align=left]总结:[/align]

HEAD
指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令
git
reset --hard commit_id


穿梭前,用
git
log
可以查看提交历史,以便确定要回退到哪个版本。

要重返未来,用
git
reflog
查看命令历史,以便确定要回到未来的哪个版本。

[align=left]
[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: