使用git使用外部文件管理多个子项目
我有一个个人项目,我想进行版本控制,但我不确定应该如何使用git来管理它。下面是文件夹结构的示例:使用git使用外部文件管理多个子项目,git,subproject,Git,Subproject,我有一个个人项目,我想进行版本控制,但我不确定应该如何使用git来管理它。下面是文件夹结构的示例: project project/public/plugin1 project/public/plugin2 project/lib/plugin1 project/lib/plugin2 我本来打算为每个插件或模块创建单独的存储库,但这似乎有点棘手,因为插件的所有文件并非都集中在同一文件夹下。所以我需要将这些目录作为plugin1进行跟踪: project/public/plugin1 proj
project
project/public/plugin1
project/public/plugin2
project/lib/plugin1
project/lib/plugin2
我本来打算为每个插件或模块创建单独的存储库,但这似乎有点棘手,因为插件的所有文件并非都集中在同一文件夹下。所以我需要将这些目录作为plugin1进行跟踪:
project/public/plugin1
project/lib/plugin1
同样,对于plugin2:
project/public/plugin2
project/lib/plugin2
公用文件夹中有css和js等文件,因此可以说更重要的文件是lib中的文件。我是否应该在该文件夹中设置存储库,并尝试添加外部公用文件夹?但吉特当然不会让我这么做。我已经试过从另一个问题:
git --work-tree=/ add /project/public/plugin1
我仍然收到一个错误,说它在存储库之外
由于这只是一个个人项目,我不需要访问或做任何远程的事情,这希望能消除一些复杂的问题。关于正确的设置方法有什么想法吗?谢谢。看起来像是一个老问题,但是,对于任何看到这个问题的人来说,你想做的是使用git子模块
# git submodule add git://path-to-your-repo.git modulename
# git submodule update modulename
这只是一个高层次的概述。请阅读更多详细信息。为什么要将它们分开?我想你可以用子树来做,但这可能会让事情变得复杂一些。你认为这真的有必要吗?@Renato Zannon我需要将它们分开,因为每个插件都是一个单独的版本。因此,plugin1可能是1.5版,plugin2可能是2.1版,等等。我认为这应该由您使用的语言/框架来处理,而不是git。你在开发什么技术?@Renato Zannon这是一个php/mysql项目。但我无法在文件夹中移动。如果所有插件文件都位于同一个文件夹中,那么使用git确实会容易得多。那么,没有办法单独跟踪这些插件了吗?就我个人而言,我会从最简单的事情开始,也就是说,做一次回购,然后在有特殊需要时将其拆分。