如何为特定的标记或提交添加 Git 子模块?
步骤1: 添加子模块 git submodule add git://some_repository.git some_repository 步骤2: 将子模块修复为特定的提交 默认情况下,新的子模块将跟踪主分支的 HEAD,但它不会在您更新主存储库时更新。为了更改子模块以跟踪特定的提交或不同的分支,请将目录更改为子模块文件夹并像在普通存储库中那样切换分支。 git checkout -b some_branch origin/some_branch 现在子模块固定在开发分支上,而不是主模块的 HEAD。
步骤1: 添加子模块
git submodule add git://some_repository.git some_repository
步骤2: 将子模块修复为特定的提交
默认情况下,新的子模块将跟踪主分支的 HEAD,但它不会在您更新主存储库时更新。为了更改子模块以跟踪特定的提交或不同的分支,请将目录更改为子模块文件夹并像在普通存储库中那样切换分支。
git checkout -b some_branch origin/some_branch
现在子模块固定在开发分支上,而不是主模块的 HEAD。
来自 两个家伙争吵ーー把 Git 子模块绑定到特定的提交或分支。
子模块存储库保持指向特定提交的分离 HEAD 状态。更改提交只需签出不同的标记或提交,然后将更改添加到父存储库。
$ cd submodule $ git checkout v2.0 Previous HEAD position was 5c1277e... bumped version to 2.0.5 HEAD is now at f0a0036... version 2.0
父存储库上的 git-status现在将报告一个脏树:
git-status
# On branch dev [...] # # modified: submodule (new commits)
添加子模块目录并提交以存储新指针。