Perforate how customer specifications map to Mercurial

We recently switched from Perforce to Mercurial and loved it!

One small problem: after much research, we cannot figure out how to map a special directory in the repository to some special place on the client. Here is an example of our hg repo:

/foo/source files
/bar/source files
/build
    /macosx/mac make files
    /win/windows make files

With Perforce, we used client spec mappings to map // depot / build / macosx / ... to just / build / ... on the Mac client and // depot / build / win / ... to / build / ... in the windows dev window. The foo and bar directories are synchronized as is. Makefiles in / foo and / bar assume that our makefile collectors are located in / build, and we would like to keep them as they are. The final set of files should look like this:

/foo/source files
/bar/source files
/build/client specific make files

I read about subrepos, but this solution does not seem to be client dependent.

, , !

+3
3

Mercurial.

, , .

Mercurial 1 1 , , , , .

, , Mercurial, , .

+3

Mercurial, .

, Mac OS X (ln -s) (mklink Vista XP http://technet.microsoft.com/en-us/sysinternals/bb896768.aspx), .

Make (, $(BUILD)/something.ext build/something.ext).

+2

Mercurial. "" TODO, . , ​​. , , - "" ( ), .

.

  • . build .hgignore. . : .
  • , make make , .
+1
source

Source: https://habr.com/ru/post/1774310/


All Articles