今天在想提交单元到分支的时候,因为在 SVN
养成的习惯,喜欢先更新下项目,就是IDEA
里的这个按钮
Move or commit them before merge
,然后打开查看发现在未受控制的项目中
有一大堆有含义的Java
文件,当然没含义的就指Class
文件了。问题来了,我TM也不知道这些文件哪里来的……,但是在gitlab
上查看后发现,这些在我本地不受管理的文件
,实际上是真真存在的,这我就懵逼了啊,只能Revert
大法了。
熟练的点击Idea
工具栏中的Git
下的Fetch
,以及Revert Head
,就是下边这俩。
你要问我为啥不敲命令,其实是因为我不会……
果不其然不可以,总是会弹出来Move or commit them before merge
这个报错,感觉根本就没执行命令,大胆猜测小心证实,我觉得是IDEA
在搞鬼,那我就用命令,谁怕谁,一顿百度,过程就不讲了,命令记录下哈
git fetch --all 复制代码
将最新的代码搞下来
git reset --hard origin/XXXX 复制代码
XXXX
代表目标分支,就是想把本地代码完全恢复到远程的状态的,而hard
可以将本地代码库、暂存区、工作区完全还原为指定的分支内容,缺点就是会把没push
的代码全部搞没了,执行前需要备份下
经过这两部操作后 可以发现本地的代码恢复正常了 哈哈