git回退
预热:
进入要回退的文件目录,或者使用
find -name 文件名
得到文件的完整路径
步骤一:
查看要回退文件的历史记录
git log --oneline .a.txt
比方说,这是我们需要回退到merge trunk的状态
其版本sha1为 120a893
步骤二:
使用reset命令,默认是 --soft
git reset 120a893 a.txt
使用 git status 查看当前分支的状态
绿色部分为回退的那个版本修改内容;
红色部分为当前版本的内容;
步骤三:
提交历史版本内容
git commit -m 'reset file xxxx'
执行完这一步,你查看文件,还是没有改动,因为这个文件目前的状态时modify,也就是说,是受当前版本改动了的,你需要取消这些修改
git checkout -- xxxx(执行这个操作前,也可以使用 git stash 备份一下)
执行完该命令后,查看文件,里面的内容就是历史版本的内容了