【问题标题】:git update submodule after checkout to tag结帐后git更新子模块以标记
【发布时间】:2012-01-05 18:35:26
【问题描述】:

我有一个名为“A”的项目,在这个项目中我有一个名为 thirdparty 的文件夹,其中有 5 个子模块“1”、“2”、“3”、“4”、“5”

当我标记项目“A”并将其拉到我的服务器上并结帐到标记时,第三方文件夹中没有任何内容

那么,一旦我结帐到标签,我现在如何更新子模块?

是否也可以将子模块代码添加到标签中,使其成为一个可靠的头部,包括标签时的子模块?

【问题讨论】:

    标签: git


    【解决方案1】:

    如果要获取子模块的更新信息,需要进入子模块文件夹,将其作为一个总repo。您的主要项目(这里是“A”)只跟踪子模块的commit id这里是“1”、“2”等)。
    也许你会对这个Question 感兴趣。希望它是你想要的。 :)
    Heresubmodule 上的文档。
    最后一个问题的答案是“是”。您可以管理您的主项目和其他项目,这些项目是您的主项目中的子模块。每次更新子模块的代码时,都需要在子模块的文件夹中添加 git add .git commit -m "message"
    例如。如果你想更新你的子模块“1”的代码:

    cd A/第三方/1
    [更新您的代码]
    混帐添加。
    git commit -a "更新消息"
    git推送

    然后返回主项目“A”提交子模块的更新。

    cd ../..
    混帐状态

    这里会显示你的项目“1”的commitid信息。

    git add A/thirdparty/1
    git commit -m "更新子模块 1"
    git推送

    【讨论】:

      【解决方案2】:

      我不确定我是否真的理解你的问题。

      使用子模块的正常流程是这样的:

      1. 克隆项目
      2. 初始化子模块
      3. 更新子模块

      这能解决你的问题吗?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-05-28
        • 1970-01-01
        • 2012-04-27
        • 2012-09-14
        • 1970-01-01
        • 2021-10-15
        • 1970-01-01
        相关资源
        最近更新 更多