首先查看提交日志,可查询到每次提交的版本号
git log
git log --pretty=oneline 每次记录按一行输出,比较容易查看
HEAD
表示版本库(不是工作区)当前版本,上一版本用HEAD^
表示,上上版本用HEAD^^
表示,以此类推。
回退到上一个版本
以下两种情况回退:
- 一种是readme.txt已经添加到暂存区后,需要缓存区撤销修改就回到和版本库一模一样的状态;
git reset HEAD <file> 可以把暂存区的修改撤销掉(unstage),工作区修改的数据不会被丢失。
git checkout -- readme.txt 把readme.txt文件在工作区的修改全部撤销,删除了工作区的修改
这两个命令可以一起用,则工作区、暂存区与版本库保持一致。也可以分别处理不同区;
- 一种是readme.txt已经提交到版本库中,现在要回退到正确版本。
git reset --hard HEAD^
git reset --hard 版本号 版本号可以填写一部分
此时执行git log
命令,被回退的未来记录已经看不到了;如果向未来回退,需要用git reflog
查看命令历史获得版本号。
git reflog
git log可以查看提交历史,git reflog查看命令历史。
可以多次git add . 命令,进行一次git commit 提交操作