Git学习二
版本回退
git log命令显示从最近到最远的提交日志。
git log
如果嫌输出信息太多,看得眼花缭乱的,可以试试加上–pretty=oneline参数:
现在我们启动时光穿梭机,准备把readme.txt回退到上一个版本,怎么做呢?
首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,上一个版本就是HEAD^, 上上一个版本就是HEAD^^ ,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
我们要把当前版本append GPL回退到上一个版本add distributed,就可以使用git reset命令:
git reset --hard HEAD^
再次 git log
可见最新的拿一个版本被回退了,么有了。当然还是可以返回的,只要终端窗口没有被关闭,找到之前的版本的commit id。就可以回到消失的版本了。
版本号没必要写全,前几位就可以了,Git会自动去找。当然也不能只写前一两位,因为Git可能会找到多个版本号,就无法确定是哪一个了。
现在,你回退到了某个版本,关掉了电脑,第二天早上就后悔了,想恢复到新版本怎么办?找不到新版本的commit id怎么办?
Git提供了一个命令git reflog用来记录你的每一次命令:
git reflog