从其他存储库的部分构建GIT存储库

时间:2013-02-25 20:23:01

标签: git module

是否可以使用另一个GIT存储库的部分创建一个全新的GIT存储库?

让我解释一下。我有一个中等大的存储库,有几个模块。该“系统”可以完全或模块化使用。但是从主存储库中取出每个模块的所有必需文件并不总是一件容易的事。

所以我想知道我是否可以创建一些小型存储库,假设每个模块都有一个包含所有依赖项并保持它们与主存储库同步。

从概念上讲,它将是一个子模块,但除非我错了,否则这不是为此功能所做的。

1 个答案:

答案 0 :(得分:0)

Git子模块允许您将整个子目录移动到单独的存储库中,并链接到那里的精确提交。

如果您的模块重叠,就像您有很少的共享目录,并且每个模块在每个目录中都有很少的文件,那么您需要重新设计模块。当你有像这样的dir hiearchy时,Git子模块很不错:

 |-- application
 |   |-- class
 |   `-- some stuff
 |
 `-- plugins
     |-- first
     |   |-- class
     |   `-- some stuff
     |-- second
     |   |-- class
     |   `-- some stuff
     `-- third
         |-- class
         `-- some stuff

其中plugins/firstplugins/secondplugins/third是子模块根目录。