4

我想sub在我的mainrepo 中有一个 repo,它可以从一个完全不同的远程 repo 推送和拉取main。所以我想要一个子模块。但我想在本地创建子模块,然后将其推送到远程。它还不存在于任何地方。

我见过的所有示例都涉及将远程 repo 拉入子模块,在某种程度上,这就是子模块的创建方式

git submodule add git@github.com:url_to/awesome_submodule.git path_to_awesome_submodule

有没有办法创建子模块,进行一些提交,然后将它们推送到有问题的远程仓库?

4

1 回答 1

3

在没有远程的情况下创建 git 子模块

否:您的子模块必须具有从中克隆它的远程仓库。

在您的情况下,请确保您的子仓库的根文件夹没有被跟踪:

git rm sub

然后移动/删除它,并将其作为子模块 repo 添加回来:

cd main
git submodule add git@github.com:url_to/awesome_submodule.git sub

从那里,您可以进入该子模块并:

  • 签出一个分支(默认情况下,你在分离的 HEAD 中)
  • 做出一些承诺
  • 从它推送到它自己的远程 URL。
于 2018-09-22T00:54:10.673 回答