【问题标题】:Does doing 'git submoudle update' update the submodule after git pull?在 git pull 之后执行“git submodule update”是否会更新子模块?
【发布时间】:2014-05-05 14:49:50
【问题描述】:

我是 git 子模块的新手,我对可用的有关 git 子模块的文档感到非常困惑。我的问题很简单

我已经离开 2 个月了,我想更新我的本地仓库代码。我的仓库中有子模块。我会
git pull origin master(它会更新我本地仓库中的代码。)
现在我想更新子模块

因此,正在这样做

git 子模块更新够了吗?

我也看到了命令

git submodule foreach git pull origin master
在更新子模块的文本中。

在我看来,这个命令正在为每个子模块执行 git pull。但是在我的仓库中,每个子模块都处于分离的头部状态。当我进入他们的子目录并执行 git branch 时,它说 (no branch) 我认为这意味着它处于分离头状态。因此,如果它不在任何分支中,则将拉取代码放置在哪里。

那么对我来说,确保我的仓库处于更新状态的正确方法是什么。

【问题讨论】:

    标签: git git-submodules


    【解决方案1】:

    git submodule update 命令足以获取所有已注册的子模块。如果要更新子模块的子模块,则需要git submodule update --recursive

    请注意,子模块通常会签出到特定的提交,因此在两次更新之间间隔两个月不会更改与子模块关联的提交。但是,如果您将子模块配置为使用分支,那么如果这些分支实际上在两个月内已经发展,那么您将获得更改。

    【讨论】:

      猜你喜欢
      • 2023-02-26
      • 2013-11-06
      • 2021-01-06
      • 2022-12-08
      • 2019-10-09
      • 2010-11-12
      • 1970-01-01
      • 1970-01-01
      • 2020-02-27
      相关资源
      最近更新 更多