我喜欢我设置的Subversion的其中一件事是,我可以拥有一个单一的主仓库,并包含多个项目。当我想要在一个项目上工作时,我只需检出该项目即可。像这样:
\main
\ProductA
\ProductB
\Shared
那么
svn checkout http://.../main/ProductA
作为一个新手使用Git,我想在承诺特定工作流程之前探索一些最佳实践。从目前为止阅读的内容来看,Git将所有内容存储在项目树的根目录下的一个单独的“.git”文件夹中。因此,我可以选择以下两种方法之一:
- 为每个产品设置单独的项目。
- 设置一个单一的大型项目,并将产品存储在子文件夹中。
我想Linux内核项目仓库的大小也是如此巨大,因此必须有一种处理Git的正确方式,但我还没有弄清楚。
是否有任何针对使用非常大的多项目仓库的指南或最佳实践?
和
git status`都学会了考虑子模块状态,即使从主项目执行。你绝对不能错过子模块修改。 Translated: @Paul: 说实话,你可能是正确的... 直到最新的 Git 发布版本 1.7.1。(http://www.kernel.org/pub/software/scm/git/docs/RelNotes-1.7.1.txt)`git diff和
git status` 都已经学会考虑子模块状态,即使是从主项目中执行。你不可能漏掉子模块的修改。 - VonC