Git/Github: 替换分叉存储库的子模块

Git/Github: Replace a submodule of a forked repository

我想要的

我有一个 open source parent repository 我想创建一个 fork 来使用它,这个存储库由 3 个子模块和一些配置文件组成。我想要的是用我自己的实现(私有存储库)替换其中一个子模块(saleor-storefront),我希望能够使用上游存储库所做的更改来更新其他子模块和文件。

我应该只更改我想从 .gitmodules 文件中替换的模块的路径,还是涉及其他我不知道的更改?

分叉项目结构

saleor-platform
├── ./.gitmodules
├── ./common.env
├── ./docker-compose.yml
├── ./saleor
├── ./saleor-dashboard
└── ./saleor-storefront  -> Submodule to be replaced with my own implementation

.gitmodules

[submodule "saleor"]
    path = saleor
    url = https://github.com/mirumee/saleor.git
[submodule "saleor-storefront"]
    path = saleor-storefront
    url = https://github.com/mirumee/saleor-storefront.git
[submodule "saleor-dashboard"]
    path = saleor-dashboard
    url = https://github.com/mirumee/saleor-dashboard.git

Git 2.25 command git submodule set-url 应该有助于 update/replace 您的子模块之一的 URL 通过您的叉子之一:

git submodule set-url -- saleor-storefront https://github.com/<me>/saleor-storefront

这样,您就不会错过修改子模块 URL 时涉及的任何“其他更改”。