Cross platform development with a single working copy
We are doing some cross platform development on OSX with Paralells installed with different Windows versions. Has anyone found a good solution to share a single working copy/code base instead of having to check out different copies on each operating system?开发者_如何转开发
My first thought would be distributed version control, such as Git or Mercurial. But that gives you a shared repository, not a shared working copy.
What about exposing a directory as a shared network drive and connecting to it from the other virtual environments?
I'm using dropbox for this. Nothing stops you from having your files in version control and dropbox at the same time. I've discovered that this approach produces faster compile times than mounting a networked file system (e.g. with SMB, NFS or sshfs).
The key is to configure your build system for out-of-source builds.
CMake is one build system that makes this trivial:
http://www.cmake.org/Wiki/CMake_FAQ#What_is_an_.22out-of-source.22_build.3F
If modifying your build system is not an option, one possible alternative is to put all your source files in a separate dropbox-synced directory and just sym-link it in your regular build tree.
精彩评论