
On 2011-04-28 08:21 -0600, Chris Smith wrote:
It seems to me the same problems could be solved without the necessary increase in complexity by:
(a) Keeping repositories in sibling directories with names.
(b) Keeping a working directory that you build in as one of these, and switching it to match various other named repositories as needed. Then your build files are still there.
Unfortunately, sharing a build directory between separate repositories does not work. After a build from one repository, all the outputs from that build will have modification times more recent than all the files in the other repository. When switching branches, git (and other systems) update the mtimes on all files that changed, which will cause build systems to notice that the outputs are out of date. 'cd' does not do this. Thus, if you have separate repo directories (call them A and B) with different versions of some file, and you share a build directory between them, it is very likely that after building A, a subsequent build of B will fail to work correctly. -- Nick Bowler, Elliptic Technologies (http://www.elliptictech.com/)