子模块 - 更新 .gitmodules 以指定分支名称

Submodule - update .gitmodules for specifying a branch name

我已将子模块添加到 ADO 存储库:

.git模块

[submodule "public"]
    path = public
    url = https://xyz.visualstudio.com/DefaultCollection/abc/_git/STW-Sol-public

是否有 git 命令来更新 .git 指定分支名称的模块?

从 git 2.22 开始,您可以使用 git submodule set-branch

git submodule set-branch --branch mybranch public

这会将 branch = mybranch 添加到您的 .gitmodules。如果您愿意,也可以手动添加。

可以在 git-submodule(1) 上找到更多信息。

您可能还想看看 this answer,它详细说明了跟踪分支的确切含义。最重要的是:

git submodule add -b is not some magically way to keep everything up to date with a branch. It is simply adds information about a branch in the .gitmodules file and gives you the option to update the submodule object to the latest commit of a specified branch before populating it.