多个开发人员如何使用相同的vcproj文件?

EAM*_*ann 0 mercurial cmake vcproj firebreath

我正在与另外两个基于FireBreath的开发人员合作开发一个项目.到目前为止,我已经能够在我的机器上完美地工作,但我们需要通过Mercurial协调我们的开发.所以我将文件推送到存储库,并认为一切都很顺利.

不幸的是,这不起作用.

.vcproj组成解决方案的各种文件都包含对本地文件系统的硬编码引用.这对我来说很好,因为我没有移动项目.但是,当您尝试在具有不同文件结构(不同驱动器号,不同文件夹位置等)的另一台计算机上构建解决方案时,一切都会中断.

我使用FireBreath的标准项目生成脚本(Python),然后使用Visual Studio CMake脚本(prep2008.cmd)生成解决方案文件.我可以做些什么来调整事情,以便其他开发人员可以使用相同的代码库?

sbi*_*sbi 5

如果您的开发人员没有使用相同的构建/制作/项目文件,这很快就会成为维护的噩梦.所以你应该明确地使用相同的.vcproj文件.(例外情况是项目文件是从其他一些文件生成的.在这种情况下,请按照上述方式处理其他文件.)

有两种方法可以解决不同机器上不同设置的问题.一种是使所有路径相对于项目的路径.另一种是使用环境变量来引用文件/工具/库/等等.IME最好使用相对路径来查看可以通过项目检出的所有内容,并使用环境变量来完成剩下的工作.添加一个脚本,检查是否存在所有必需的环境变量,指出任何缺失的环境变量的含义,并将其作为构建先决条件运行,因此无论是谁试图使新的构建机器运行起来都会得到提示.