首页 > 代码库 > git 学习 3(版本回退)

git 学习 3(版本回退)

在git学习2中,我们已经学会了将修改重新提交到git版本库中,那么我们现在对每一次的修改git都帮助我们做好了记录。我们如何查看我们曾经最new.php这个文件做了哪些操作呢?

使用$git log 命令 就可以查看所有的之前的操作。

$ git log new.php
commit 2e38649e33a453d8c0cbeed5ff14df2fef5b6aeb
Author: user <email>
Date: Wed Nov 2 14:37:02 2016 +0800

add two echo

commit 02d85dbb7fc6eca633a7edf5621832d24af6ccb9
Author: user <email>
Date: Wed Nov 2 13:54:15 2016 +0800

write a new php file

上面的信息显示我们对new.php 做了两次修改。如果我想把版本回退到第一个版本:

$git reset --hard head^

(git reset --hard commit_id)

这时候我们的文件就回到了第一个版本

如何查看我们已经删除掉的commit_id:$git reflog

 

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考本一节,不过前提是没有推送到远程库。

 

git 学习 3(版本回退)