使用单个工作副本进行跨平台开发

我们正在OSX上进行一些跨平台开发,使用不同的Windows版本安装Paralells。 有没有人find一个很好的解决scheme来共享一个工作副本/代码库,而不必在每个操作系统上签出不同的副本?

我的第一个想法是分布式版本控制,如Git或Mercurial。 但是,这给你一个共享的存储库,而不是共享的工作副本。

将目录公开为共享网络驱动器并从其他虚拟环境连接到该驱动器呢?

我正在使用Dropbox。 没有什么能阻止你同时在版本控制和保存箱中保存你的文件。 我发现这种方法比安装网络文件系统(例如使用SMB,NFS或sshfs)产生更快的编译时间。

关键是配置你的构建系统的源代码构建。
CMake是一个使这个微不足道的构建系统:
http://www.cmake.org/Wiki/CMake_FAQ#What_is_an_.22out-of-source.22_build.3F

如果修改您的构建系统不是一个选项,一个可能的选择是把所有的源文件放在一个单独的保管箱同步目录中,并将其链接到常规的构建树中。