git/gitolite:包含多个小型项目的大型 git 仓库

git/gitolite:包含多个小型项目的大型 git 仓库

我对整个版本控制还很陌生,对 git 更是陌生。我最近在我的计算机上安装了 git,并将其设置在 NAS 服务器上。

但是,我有几个客户端文件夹,每个客户端文件夹有多个项目文件夹。

每个客户端文件夹都是一个巨大的仓库,包含其中的每个项目。

我想知道的是,有没有办法解决这个问题?例如:

  1. NAS 是我的“原点”,并且安装了 gitolite

  2. 在 computer1 上,我拥有客户端文件夹中曾经创建过的每个项目文件夹(干净的分支),

  3. 在 computer2 中我做不是客户端分支的新签出(因为该分支中的所有项目都已完成,并且我不需要它的工作副本),但我为该客户“newproject”准备一个全新的项目文件夹。

有没有办法从 computer2 提交并推送到 NAS repo?

或者也许有更好的方法来组织这一切?

答案1

Git 存储库的更好的组织方式是每个客户端项目有一个存储库(即,客户端文件夹中有多个存储库:每个客户端文件夹子目录中都有一个与项目根目录匹配的 .git)。

每个客户端都拥有一个巨大的仓库并不是一个好主意,尤其是:

  • 如果该文件夹由彼此可以独立发展的项目组成。
  • 如果总量很大(这意味着任何克隆都会很大)

如果其中一些项目链接在一起,你仍然可以将它们视为一个(父)仓库,并具有以下概念:子模块

相关内容