撤销基本就是这个界面啦
1.Mixed:配合HEAD^ 为撤销操作 ,一个^表示后退一步,这个操作表示恢复到上一个版本。使用此操作文件不会丢失
说明,恢复到上一个版本有两种情况:
一种是只执行了commit命令,即提交到了缓存区,也就是本地,使用该操作回退到上一个版本,会丢弃提交commit状态,恢复到上一个未提交的状态,改变的文件不会丢弃,当误commit时,想取消时,此方法非常有效
另一种则是执行了push命令,即提交到了远程:此时使用该操作,会回退到服务器的上一个版本,文件不会丢失,并不能对服务器的代码有任何改变,也不能回滚,此方法可以针对上一个版本的服务器代码进行查看。
上述操作对应 git命令为 (版本号,可以在工具看到,如上图)也可以用^来回退到几个后退版本
git reset --hard 27aab31879d9fc80c9fd15105b2346533637e65d
查看当前在处于git分支版本可以在工具中看到,如上图(此时处于最高级版本,就是Head)
2.Soft:配合HEAD^ 为撤销操作 ,一个^表示后退一步,表示撤销commit的操作,回退到上一次的commit状态,不会丢失代码
3.Hard:配合HEAD^ 为撤销操作,一个^表示后退一步,表示恢复到服务器的版本操作,本地修改的文件,如果没有commit,会被丢弃,且会回到服务器的版本代码,请谨慎操作
对应git命令
git reset --hard 169011c36ce0fc09803f58c3f421559fefc2857a
对应ide操作
选择这个即可
git操作遇到如下
问题1,分支代码不小心提push到了主分支上,
解决方案:丢弃提交的记录,恢复到上一个版本
先用命令
git reset --hard 169011c36ce0fc09803f58c3f421559fefc2857a
恢复到提交以前的版本
然后将该版本变成Head版本对应命令:
git push origin HEAD --force
这种操作单人开发可行;多人开发,需要重新拉取远程分支
第二种方法:
直接强制将回滚的版本提交到远程即可
git push -f
两步操作即可丢弃提交的记录版本;
问题2:不小心commit到了分支,不想提交,想取消 或者^ (表示回退到上一个版本)
$ git --Mixed 169011c36ce0fc09803f58c3f421559fefc2857a
执行该操作机会丢弃commit的记录,如果已经push了,则不行,必须回到问题1处理
git 关联远程仓库
初始化:
git init
git add .
关联远程仓库
$ remote add origin https://github.com/pingcc/xxx.git
推送分支到远程
$ git push origin master