记一次git误操作, 合并冲突别人新增文件显示成“自己新增“绿色文件
记录这次傻逼操作, 希望下次和我理解相同的童鞋不要再次入坑, 真的好尴尬
描述
1.用户A添加了文件合并到了develop
2.我修改了本地文件在我的本地分支person分支
3.pull: develop -> person, 发生冲突
4.冲突没有解决, 编显示到change log列表, 冲突文件显示红色
5.解决冲突, 重新加载磁盘文件
6.用户添加的文件便以绿色新增的颜色出现在了变更列表(准确说这个是合并列表)
问题就出在这里, 这里的因为我的git状态处于合并过程中, 不能进行其他例如checkout等操作, 必须把这次合并冲突处理完成才能进行其他操作
所以说这里的绿色新增不是我的"变更列表"的新增, 而是我的"合并列表" (develop -> person)相对person分支的新增, 所以说这里的新增文件未必是我的新增文件, 也包含了其他人的新增文件
问题出现复盘
这是我的变更列表状态
合并
直接叉掉本以为会终止合并,
但是并没有, 而是把变更列表变成了合并列表, 红色是冲突文件, 绿色是相对目标分支add文件(反应有点慢, 可能需要重新加载下磁盘效果更快), 但是这些add可能有些不是你新增的(由于没能复现当时现象, 所以没有截图)
但是当时我把这个这些绿色新增理解成了我自己新增, 并且同时在重构项目时候好多重复同名的VO文件, 我就理解成了同时在重构时候将这些文件从a移动到了b目录, 然后把a目录下面的文件删除了, 当我pull develop分支时候, 因为同时删除了, 但是我本地有这些文件, idea的自动add功能, 又把这些文件添加到了我的变更列表中了(变成绿色), 所以以我的理解, 我应该这些重复的文件删除掉, 所以最终傻逼的我在没有和同事确认的情况下自以为是的把好多不是我新增的绿色文件删除了, 然后同事找到了我…
这些绿色新增文件本来不应该出现在我的变更列表, 但是为什么出现了?
因为合并没有解决冲突, 我的合并状态被锁死, 变更列表变成了合并列表, 这些绿色新增的文件是相对目标分支新增, 而不一定是我自己新增的文件, 其中红色的文件是冲突的文件, 需要解决红色冲突才能文件这次合并, 不完成这次合并不能进行其他任何git操作
记录这次傻逼操作, 希望下次和我理解相同的童鞋不要再次入坑, 真的好尴尬
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)