【问题标题】:multiple gits under same directory同一目录下的多个 git
【发布时间】:2016-03-16 15:34:49
【问题描述】:

如何在同一个目录结构下拥有 2 个 git repo?

基本上,我有 1 个用于通用源代码的 git 存储库,我想要第二个 git 存储库来存档客户特定信息;正在配置设置、图像、上传,...

我在这个目录结构下有客户。

           client
git-1       /src
git-2       /src/custom
git-1       /public/index.php
git-2       /public/assets
git-2       /public/uploads
git-2       /config

git-1 将存储这些路径的源代码

client/src 
client/public/index.php

git-2 - 我想存档客户的特定信息

client/src/custom
client/config
client/public/assets
client/public/uploads

【问题讨论】:

  • 您能否介绍一下您为什么选择将一个项目拆分为两个存储库的背景?
  • 我在 repo-1 中有主要软件,我想在 repo-2 中进行自定义和配置设置。配置设置是每个客户端自定义的,一些客户端有自定义代码。

标签: git version-control archive


【解决方案1】:

从技术上讲,没有什么能阻止你做你想做的事。
您只需要为单个项目管理 2 个 git 存储库,这可能会导致工作流程不稳定,并且如果/当您想回滚到以前的提交/发布时,您必须弄清楚提交的时间和行正确更新您的提交,以确保您的客户特定信息与您的源代码兼容。

然而,Git 并不是为这样使用而设计的。一个通用的、稳定的和推荐的 Git 设置是 1 个项目的 1 个存储库(以及由依赖项管理器管理的任何依赖项)。

注意:您可以使用 Git submodules 将它们作为 1 个主 Git 存储库下的 2 个独立 Git 存储库进行管理;虽然这通常用于使用其他项目作为子模块的大型项目。


通读 cmets 到您的问题,您为什么不创建一个 Git 存储库,其中包含您的所有源代码等以及虚拟客户端信息?

然后,当您想将源代码用于新客户端时,只需 fork 您的 Git 存储库并将虚拟数据替换为客户端数据。
如果您对源代码进行了更改,则可以将您的分叉存储库与原始 Git 存储库重新定位/同步。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-07
    • 2012-11-12
    • 1970-01-01
    • 1970-01-01
    • 2021-10-23
    • 1970-01-01
    相关资源
    最近更新 更多