1

我有一个使用许多子模块的 github 存储库。我希望能够在本地修改它们,然后将它们推送到它们的存储库中(所以我必须使用读写存储库 url)。

但是,我还需要使用 github 的 gh-pages 服务来为存储库提供服务,而且文件中似乎需要一个只读 url .gitmodules

我可以两全其美吗?

4

1 回答 1

1

这绝对是可能的并得到支持:

  1. 使用只读 url 创建 .gitmodules 文件
  2. 提交这个 .gitmodules
  3. git submodule init
  4. 修改本地 .git/config 以将子模块更改为读写 url

从 git-submodule 手册页:

在里面

初始化子模块,即将在.gitmodules 中找到的每个子模块名称和url 注册到.git/config 中。它还将 submodule.$name.update 的值复制到 .git/config 中。.git/config 中使用的键是 submodule.$name.url。此命令不会更改 .git/config 中的现有信息。然后,您可以在 .git/config 中为您的本地设置自定义子模块克隆 URL,并继续进行 git 子模块更新;如果您不打算自定义任何子模块位置,您也可以只使用 git submodule update --init 而不使用显式初始化步骤。

于 2013-01-28T01:02:31.020 回答