1.git log 可以看见提交的版本,每个版本有一个commit id,是通过sha1计算出的数字,与SVN中递增(1 ,2 ,3)不一样。
2.commit提交了几次,可以通过git reset --hard head^ 退回到上一个版本。上一个版本是head^,上上个版本是head^,前一百个版本是head~100。
可以理解成head是一个指针,指向某一个commit id对应的版本内容,然后更新当前工作区的内容。
4.如果找不到对应的commit id,可以使用git reflog,找到commit id,如图下图操作
总结:
①head指向的版本是当前版本,因此git需要在历史版本之间穿梭,使用git reset --hard commit_id。
②穿梭前用git log 查看提交历史,以便确定要回退到那个版本。
③要重返未来,用git reflog查看历史命令,以便回退到未来的版本。