2010-03-30 53 views
1

我正在处理一个很大的Qt应用程序,它带有多个相当复杂的小部件。其中一个小部件是一个摄像头流查看器。在共享(符号链接)目录中使用Git

应用程序的组织方式使每个程序模块(即窗口小部件)都存储在它自己的目录中,并带有.pri文件。所有这些都存储在一个主目录中,将所有小部件目录分组。

在这个主项目目录旁边还有应用程序目录。让我们说一个每个部件。在这些目录中,我在主项目文件夹中的模块目录上有一个符号链接(在Windows上是别名)。此应用程序具有构建仅显示小部件的独立应用程序的必要代码。因此,例如我有一个摄像头查看器应用程序,另一个控制一些设备等。

此源代码组织运行良好,并允许我在独立应用程序中开发和测试小部件,并与主应用程序共享代码。

目前只有主工程目录在使用subversion的版本控制下。

现在我想开始使用git,并想知道这个共享目录模型是否可以使用它,或者如果有更好的方法来做到这一点。

回答

1

使用submodules,你可以定义:

  • 与N个分支(每个插件一个/测试应用程序)每个部件
  • 一个git的回购/测试应用程序的主项目

这样,您的主项目会引用所有小部件,但您只能针对其中的一个部件进行关注和测试,具体取决于您所在的分支。
或者您可以只克隆小工具/测试应用程序的其中一个仓库,仅适用于此。

这个想法仍然存在:确保在一个Git仓库中有相关数据。
这就是为什么你不会找到所有小工具在之一 Git回购,因为他们的开发生命周期可能是非常不同的一个部件彼此。

+0

您引用的回复非常好。非常感谢你。显然,共享目录应该变成子模块。主应用程序和每个小部件独立应用程序应引用相应的子模块。 – chmike 2010-03-30 15:40:10