Idea gitflow使用中常见问题及解决方法

Intellij IDEA 专栏收录该内容
6 篇文章 0 订阅

1、Fatal: There is an existing hotfix branch 'hwy_m0412'. Finish that one first.

产生原因:gitflow工作空间里只能同时存在一个hotfix分支。

解决方法:先把本地分支切换到任意一个分支上,然后在本地删除掉冲突的分支,就可以创建了。如果需要修改删除的那个hotfix分支,只需要checkout出来就行了。

2、Branches 'master' and 'origin/master' have diverged

产生原因:本地的master分支太旧了。

解决方法:从服务器pull一下origin/master分支,再创建就好了。

3、 You have not concluded your merge (MERGE_HEAD exists).

当你从远程像本地pull代码的时候,报you have not concluded your merge异常是因为你本地有修改过的代码没有提交。

解决方法:

1、把代码commit-push到远程服务器后在pull。

2、stash把代码暂存起来,下次使用的时候点击UnStash在加载到本地。

3、当发现通过以上两步还不能解决的话,就只能通过第三种回滚代码的方式了。

vcs--git--reset HEAD--reset Type(要选择Hard,和SVN默认模式是一样的)--reset

通过以上三种方法,就能解决你所有场景的you have not concluded your merge问题了,具体选择哪种可以根据你自己的选择。

 

4、error: you need to resolve your current index first


5、error: The following untracked working tree files would be overwritten by checkout:

问题4和问题5可以作为一个问题处理,他们问题的类型是一样的。

产生原因:切换分支或向下pull代码的时候本地存在新的版本未提交或者存在代码冲突。

我看网上很多人说使用`$ git clean -d -fx ""`命令,这句话会强制删除你本地所有的变更文件,包括忽略的和未提交的文件,所以请根据你的实际情况慎重选择使用。

解决方法:解决本地冲突并提交代码到远程仓库。

我的出现此问题的原因是:我从仓库合并主干到本地分支A,发现A分支太旧,所以就不想在使用这个分支A了,就放弃了A分支冲突的修改并在gitlab上直接把这个A分支给删掉了。去idea中切换分支时报问题4,然后我就在idea编辑器里还原了所有的合并文件。再次切换出现问题5,至此,本地分支A无法切换,也无法删除。

解决方法:(请谨慎操作,我的代码不需要保留,所以才要删掉)在version control窗口的local changes-->Unversioned Files中删除所有变更文件,再次切换问题解决。

 

6、git reset 参数说明

参数区别
--soft会将改动放在缓存区
--mixed不把改动放在
--hard直接丢弃修改

 

 

 

 

PS:本帖会不定期更新新问题,各位如果遇到什么不确定的问题也可以在下方评论区留言提问,我看到后会第一时间回复您的答案,并最终整理到本帖中!

  • 0
    点赞
  • 1
    评论
  • 5
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值