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

子模块完成变基后,如何对Git根项目执行变基操作?

Git子模块变基后根项目变基冲突的解决策略

当子模块变基导致提交哈希变更,根项目变基时找不到旧引用引发冲突,按以下步骤解决:

  1. 查看冲突状态
    在根项目执行:

    git status
    

    确认冲突的子模块名称。

  2. 更新子模块到变基后的最新提交
    进入冲突的子模块目录:

    cd <submodule>
    

    切换到你完成变基的目标分支(如main),确保本地是最新的变基提交:

    git checkout <target-branch>
    # 若变基是本地操作,直接切换到变基后的提交哈希也可
    # git checkout <rebased-commit-hash>
    
  3. 更新根项目的子模块引用
    返回根项目目录:

    cd ..
    

    将子模块的新引用加入暂存:

    git add <submodule>
    
  4. 继续根项目的变基流程
    执行命令恢复变基:

    git rebase --continue
    

如果存在多个冲突子模块,重复步骤2-4处理每个子模块即可。

提前预防方案

在启动根项目变基前,先统一更新所有子模块到变基后的最新提交,在根项目提交一次子模块引用的更新,再进行根项目的变基与提交压缩操作,可避免这类冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 23:02:34