我工作的项目有一个巨大的存储库(想想SVN),包括我们的源代码,DLL依赖项,构建工具(从Qmake到自定义GUI构建器),以及所有填充到目录树中的用户脚本。当开发人员想要设置计算机进行开发时,他们会安装Visual Studio和Eclipse,然后从存储库中提取所有必要的开发工具。如果不需要,则不会被拉。
我们正在转向Git获取源代码。它工作得很好,我们对我们所做的测试感到满意。我的问题是,在我们弄清楚如何处理所有工具之前,我们不能离开我们的巨型存储库。 Git目前只包含与每个项目相关的源代码和脚本。我们将项目拆分为较小的Git存储库,使开发人员只能克隆必要的项目是合理的,但我们仍然遇到这些工具的问题。
所以我的问题是:Git的用户如何管理他们的工具?如果您的构建脚本的旧版本需要Qmake v1.0,而当前版本需要Qmake 2.0,那么您如何处理?将较小的二进制工具添加到存储库是否合理,知道克隆操作将下载每个旧版本?它让我担心新开发人员无法查看旧版本的源代码并进行编译;他们还必须知道需要哪些开发工具。在我们正在升级开发工具的过程中,这是一个重要的考虑因素。
这些工具不会经常更改,但有时会发生变化。它们不是那么大,但我讨厌他们在Git中的想法。该项目已经很老了,所以我们有很多“帮助程序”,用于维护客户可能想要做的数据或子任务。
有什么想法吗?你是怎么做到的?
答案 0 :(得分:1)
还有另一类软件旨在帮助诸如木偶,厨师,流浪汉等行政任务。这些工具允许通过特殊类型的脚本(配方)描述环境,然后自动设置所有软件。