使用idea的git插件控制代码分支合并时,由于操作不当,报错了,控制台报错如下:

cant checkout because of unmerged files,you have to  resolve all merge conflicts before checkout.

仔细回想报错的起因,经过大概是这样的:首先,远程仓库里面的代码版本是很老了,而本地的代码版本比较新,因此在合并时,我首先使用了stash命令,保存了本地新改的代码,然后使用了pull命令拉取了远程分支的代码,合并结束后,再使用unstash changes命令来放开暂存的代码,结果就报了这个错误.然后其他的git操作都会报这个错,所以,必须得先解决这个问题,才能继续接下来的操作。
怎么解决呢?很简单,三条Git命令就可以了,打开terminal终端,输入如下命令:

git merge
git reset
git pull

就可以把代码从远程仓库拉取下来了.
这里简单说一下git reset和git revert 两个命令的区别:
git reset 可以理解为重置,是变更HEAD指针位置,使其指向之前存在的版本,不过指针移动之后,目标版本之后的版本都会不存在了;
git revert 可以理解为撤销操作,但是这次撤销之后的版本,git会把操作过的代码版本作为一个最新的版本进行管理.

posted on 2019-05-26 20:13  云间独步  阅读(15643)  评论(0编辑  收藏  举报