Git 版本回退
2015-12-14 16:30
441 查看
原文来自:http://smaij.com/git-%E7%89%88%E6%9C%AC%E5%9B%9E%E9%80%80/
如果我们修改了文件。提交到github 版本库后。发现代码有点错乱了。你想要回到上一个或者上两个版本中去。那么,很幸运,Github 提供有很方便的回滚功能。
我们通过一组实验来明了。
下面我commit 了三个版本。修改一个叫 test.php 的文件。
版本1:version 1.0
版本2:version 2.0
版本3:version 3.0
版本控制系统一个很重要的功能,当然就是管理各个版本间的问题了。Git 也是为了处理这个问题而诞生的,Git 中有一个命令可以查看历史记录。就是 git log 这个命令了。
这个命令显示的是提交的记录,在这里我修改了三次后提交了三次。最近一次是version 3.0 ,最早一次是version 1.0 。
到这里。你首先要知道你现在所处的是那个版本,如何回到那个版本。
在Git 中,使用命令 git reset 来操作进退。参数 HEAD 表示当前的版本,假如你当前已经退回到了version 2.0 版本。那么你使用
则会返回version 2.0 的版本ID
要回到当前版本的上一个版本去。就是用
在 HEAD^^ 表示退回到两个版本前。有多少个^ 就是退回到多少个版本去,如果不幸要退后25个版本。你也可以
好,退回来了。突然发现问题原来是最新版一个文件中缺少了一个 ‘;’。此时怎么办。还能回去吗?
能!
在用 git log 看到的版本中。最新的那些版本已经不在了。怎么办?
github 已经意料到我们会疏忽。于是。他帮我们记录了我们的操作……感谢!
使用 git reflog 来查看你的每一次命令操作记录
这就好办了。我要回到version 3.0 去。
好了好了。太好了
总结:
HEAD 指向的是当前的版本ID 。我们也可以使用它来穿梭到上下的版本去。
使用git log 可以看到我们git中的提交、回退、版本ID 等信息
使用git reflog 查看命令历史。使用它来挽救过度回退
如果我们修改了文件。提交到github 版本库后。发现代码有点错乱了。你想要回到上一个或者上两个版本中去。那么,很幸运,Github 提供有很方便的回滚功能。
我们通过一组实验来明了。
下面我commit 了三个版本。修改一个叫 test.php 的文件。
版本1:version 1.0
第一次修改的时候。 **********************
版本2:version 2.0
第二次修改的时候。 **********************
版本3:version 3.0
第三次修改的时候。 **********************
版本控制系统一个很重要的功能,当然就是管理各个版本间的问题了。Git 也是为了处理这个问题而诞生的,Git 中有一个命令可以查看历史记录。就是 git log 这个命令了。
这个命令显示的是提交的记录,在这里我修改了三次后提交了三次。最近一次是version 3.0 ,最早一次是version 1.0 。
到这里。你首先要知道你现在所处的是那个版本,如何回到那个版本。
在Git 中,使用命令 git reset 来操作进退。参数 HEAD 表示当前的版本,假如你当前已经退回到了version 2.0 版本。那么你使用
git reset --hard HEAD
则会返回version 2.0 的版本ID
2d9a6407f9becba08ce46ae55035e0c7f71da8b1
要回到当前版本的上一个版本去。就是用
git reset --hard HEAD^
在 HEAD^^ 表示退回到两个版本前。有多少个^ 就是退回到多少个版本去,如果不幸要退后25个版本。你也可以
git reset --hard HEAD~25
好,退回来了。突然发现问题原来是最新版一个文件中缺少了一个 ‘;’。此时怎么办。还能回去吗?
能!
在用 git log 看到的版本中。最新的那些版本已经不在了。怎么办?
github 已经意料到我们会疏忽。于是。他帮我们记录了我们的操作……感谢!
使用 git reflog 来查看你的每一次命令操作记录
这就好办了。我要回到version 3.0 去。
好了好了。太好了
总结:
HEAD 指向的是当前的版本ID 。我们也可以使用它来穿梭到上下的版本去。
使用git log 可以看到我们git中的提交、回退、版本ID 等信息
使用git reflog 查看命令历史。使用它来挽救过度回退
相关文章推荐
- 《git权威指南》第5章暫存区--读书笔记
- 《git权威指南》第4章git初始化--读书笔记
- git 积累
- git init,git add和git commit三者的区别和使用
- git 常用命令
- The working copy “XXXX” failed to commit files.
- Git Commit的日志格式规范
- Mac下用终端进行GIT的commit操作
- 十分钟帮你解决git amend 错误
- mac 下git常用命令
- git-commit(1)手册页
- Gi之(二)基础命令
- git 学习之二
- git 学习之一
- Git commit --amend 修改提交信息
- git回滚操作---revert
- git commit/ git rebase /git pull/git reflog
- git使用
- git合并远程仓库commit
- git cherry-pick合并某个commit