一直在思考这个问题,对任何建议都很感兴趣。如何版本控制重叠的文件夹结构?
A 简单的Unity游戏项目看起来像这样,在Git回购Root
。
Root
├─Assets
│ └─Game files
└─Project files
当我随着时间的发展众多的插件,从而导致结构看起来像这样的。
Root
├─Assets
│ ├─Plugins
│ │ ├─Plugin_A
│ │ ├─Plugin_B
│ │ ├─Plugin_C
│ │ └─Plugin_D
│ └─Game files
├─iOS Plugin projects
│ └─Plugin_C project
├─Anroid Plugin projects
│ └─Plugin_D project
└─Project files
现在我真的希望有插件自己的版本(这样我就可以保持“距离”任何游戏项目开发它们),也保留了每个项目的相对位置。
的一点是:有多个子文件夹在同一subrepository(!)(!)。就像在单个(!)子库中有Assets/Plugins/Plugin_D
和Anroid Plugin projects/Plugin_D project
一样。并与Plugin_C
做休息,等
将是巨大的,有每个插件的仓库处的根部(保留其子文件夹的位置)。
Root
└─Assets
└─Plugins
└─Plugin_A
但重点是在同一个(!)插件库中有重叠的文件夹。像有一个存储库,包含包含其各自重叠的插件项目(iOS Plugin projects/Plugin_C project
)的本机插件(Assets/Plugins/Plugin_C
)和(!)。喜欢本作的iOS:
Root
├─Assets
│ └─Plugins
│ └─Plugin_C
└─iOS Plugin projects
└─Plugin_C project
而对于安卓
Root
├─Assets
│ └─Plugins
│ └─Plugin_D
└─Anroid Plugin projects
└─Plugin_D project
我试图让他们都子模块项目根的(与忽略一切,但该插件文件夹),但我不能将多个子模块创建为一个Root
文件夹。
作为奖励,这将是巨大的,在单个库中的所有插件,这样我就可以引导任何一个项目很容易,然后添加/删除选择性模块。
我至今就是使每一个本地文件夹的子模块,但这样一个项目安装过程是很乏味/容易出错,我也不能版各自的管理对应的本地插件项目。
真的对任何建议感兴趣。
听起来像一个良好的使用.gitignore:主项目根目录会忽略X_Plugin_projects目录,那么*这些*目录中的每一个都将成为它们自己的git repos。 – Draco18s
@ Draco18s感谢您的建议!我可以简单地使用子模块来做同样的事情,但是我无法通过这种方式版本化重叠的文件夹结构(请参阅上面的iOS插件内容)。 – Geri
是的,我不知道这些。 – Draco18s