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

如何通过Git Submodule拉取指定仓库分支的变更到另一仓库分支?

使用Git Submodule拉取指定分支变更的可行方法

情况1:当前仓库已添加目标子模块

如果已经在当前仓库中配置过该共享仓库作为子模块,按以下步骤拉取指定分支的最新变更:

  • 进入子模块目录:cd path/to/your/submodule
  • 切换到目标分支:git checkout your-target-branch
  • 拉取分支最新代码:git pull origin your-target-branch
  • 返回主仓库,提交子模块的更新记录:
    cd ../
    git add path/to/your/submodule
    git commit -m "Update submodule to latest changes on your-target-branch"
    

情况2:当前仓库未添加目标子模块

如果还没配置子模块,先添加指定分支的子模块再拉取代码:

  • 在当前仓库根目录执行添加命令(指定分支):
    git submodule add -b your-target-branch <共享仓库的Git地址> path/to/your/submodule
  • 初始化并拉取子模块完整代码:git submodule update --init --recursive
  • 后续子模块分支有更新时,重复情况1的步骤即可。

关键注意事项

  • 子模块默认处于detached HEAD状态,必须手动切换到目标分支后再拉取变更,否则无法跟踪分支的后续更新
  • 主仓库实际存储的是子模块的特定提交哈希,因此每次子模块更新后,主仓库必须提交这个哈希变更,才能让其他协作开发者同步到最新的子模块状态

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 22:35:49