git - 如何在不使用分支的情况下在同一基目录中创建两个 Git 存储库?

标签 git magento git-submodules git-subtree git-slave

我们目前正在将我们的 Magento Enterprise(电子商务 Web 应用程序)文件移动到 Git 中。 httpdocs/.gitignore 文件包含以下内容:

app/design/frontend/company/website/
skin/frontend/company/website/

在初始化、提交和推送 httpdocs/后,我们的第一个 Git 存储库已成功创建。我们现在想将上述两个目录放入它们自己的、单独的存储库中。 (一起,在一个单一的存储库中!)我们在这里遇到的问题是这些目录共享一个已经包含我们第一个 Git 存储库的公共(public)根目录;即:httpdocs/

我读过可以使用子模块功能将其他存储库嵌入现有树的子目录中。但是,例如 kernel.org 处的文档和 git-scm.com看起来太复杂了,让我想知道这是否真的是前进的道路。我们只需要两个独立的存储库,它们恰好具有相同的根。

我读到的另一种可能的解决方案可能是从 app/design/frontend/company/website/初始化并添加 skin/frontend/company/website/作为移植点,以便将这些目录连接在一起。然而,这又一次显得过于复杂,并且打算在从另一个版本控制系统迁移到 Git 时使用。

最佳答案

您将不得不使用子模块或通过子树 merge 链接不同的存储库。

如果你走子模块路线,考虑使用gitslave因为如果您正在积极开发这两个存储库,它将为您节省很多手动步骤。

希望这对您有所帮助。

关于git - 如何在不使用分支的情况下在同一基目录中创建两个 Git 存储库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5729397/

相关文章:

Xcode 的 "rebase local changes onto upstream changes"?

linux - IdentityFile 在 ssh 配置中被忽略

Git:如何获取推送到远程主控的分支列表?

mysql - 调用未定义的方法 Varien_Db_Statement_Pdo_Mysql::addColumn()

Git 子模块和 ssh 访问

git - 将 MsBuild 与 Git 集成

Magento 全页缓存与 Varnish

Magento 管理客户添加/编辑显示空白页面

git - 为什么提交不遵循 merge 基础错误?

当我 checkout master 时,git 子模块有 "new commits"