如何将git仓库的子目录指向单独的远程仓库?

时间:2017-09-22 14:57:24

标签: git git-remote

我在一个带有单个遥控器的存储库中有一个现有项目。我试图添加另一个遥控器,但我需要将新遥控器与一个子目录相关联。

/project/db
/project/misc
/project/app
/project/Dockerfile
/project/README.md

鉴于如上所述的项目结构,我希望能够将/project/app连接到新的远程存储库,这样如果我推送到该存储库,它会将/app视为根。这甚至可能吗?我知道我可以创建一个新的本地仓库并将/app中的文件复制到其中,但我想保留我的项目历史记录,并保留其他文件(与之相关)与{{ 1}}文件。

我这样做的原因是因为我必须从我自己控制网站根目录的自定义托管切换到不同的提供商(WPEngine),其中应用程序文件需要更严格的设置在存储库根目录中。

1 个答案:

答案 0 :(得分:1)

您正在寻找的是Git submodules

它们允许您在存储库中使用存储库,每个存储库都有自己独立的历史记录。

所有超级存储库都可以看到子项的签出提交中的更改,并且通过提交您在两者之间获得链接(父级的所有其他克隆将包括该特定版本的子级)。