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

如何将本地指定Git子模块与GitLab远程仓库同步?

同步指定子模块到远程仓库的正确操作

如果本地mysamplefolder子模块缺少远程仓库的文件,要同步到最新版本,可按以下步骤操作:

方法一:直接在主仓库操作(推荐)

执行以下命令,拉取指定子模块的远程最新代码并更新:

# 更新单个子模块到远程最新版本
git submodule update --remote mysamplefolder

# 如果子模块还有嵌套子模块,加上递归参数
git submodule update --remote --recursive mysamplefolder

这个命令会自动拉取mysamplefolder子模块自身远程仓库的最新代码,同时更新主仓库中记录的子模块commit指针。

方法二:进入子模块目录手动更新

如果需要更精细的控制(比如切换特定分支),可以分步操作:

  • 进入子模块目录:
    cd mysamplefolder
    
  • 拉取对应分支的最新代码(默认分支通常为main或master):
    git pull origin main
    
  • 若有嵌套子模块,执行递归更新:
    git submodule update --recursive
    
  • 返回主仓库,提交子模块指针的更新(如果主仓库中该子模块的引用已改变):
    cd ..
    git add mysamplefolder
    git commit -m "同步子模块mysamplefolder到远程最新版本"
    git push origin <主仓库分支名>
    

注意点

  • git submodule update --recursive 默认只会根据主仓库记录的commit来同步子模块,不会主动拉取子模块的远程最新代码,必须加上--remote参数才会拉取子模块自身的远程更新。
  • git pull 仅作用于主仓库,不会处理子模块内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 17:52:04