You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Git合并冲突后,代码编辑器提示‘无法在只读模式下编辑’求助

解决Git合并冲突及IDE只读无法编辑问题

问题重现

执行合并命令时出现报错:

git merge mod-profile-selector
error: Merging is not possible because you have unmerged files.
hint: Fix them up in the work tree, and then use 'git add/rm <file>'
hint: as appropriate to mark resolution and make a commit.
fatal: Exiting because of an unresolved conflict.

当前Git状态处于main|MERGING,IDE中冲突文件提示无法在只读模式下编辑,无法修改冲突内容。

解决步骤

1. 解除文件只读状态

  • Windows:右键冲突文件 → 属性 → 取消勾选「只读」 → 确定
  • macOS/Linux:终端执行命令赋予文件可编辑权限:
    chmod +w <冲突文件路径>
    

2. 手动解决代码冲突

打开冲突文件,找到Git标记的冲突区块(以<<<<<<< HEAD、=======、>>>>>>> mod-profile-selector分隔):

  • 保留需要的代码逻辑,删除所有冲突标记和不需要的代码片段
  • 示例:
    // 冲突区块示例
    <<<<<<< HEAD
    // 当前main分支的代码
    function getUserInfo() { return 'main-data'; }
    =======
    // 待合并分支mod-profile-selector的代码
    function getUserInfo() { return 'profile-data'; }
    >>>>>>> mod-profile-selector
    
    // 解决后(二选一或合并逻辑)
    function getUserInfo() { return 'profile-data'; }
    

3. 标记冲突已解决

修改完成后,在终端执行命令将文件标记为已解决:

git add <冲突文件路径>

多文件冲突可批量添加:

git add .

4. 完成合并提交

执行提交命令完成合并:

git commit

Git会自动生成合并提交信息,确认保存即可;也可自定义提交信息:

git commit -m "合并mod-profile-selector分支,解决代码冲突"

5. 放弃合并(可选)

如果不想继续合并,执行命令终止合并过程,回到合并前状态:

git merge --abort

内容的提问来源于stack exchange,提问作者SL5net

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 10:35:34