SymLink Substitute in Vesta (ln -s)

You can't create symlnks (ie, symbolic links, ln -s ) in vesta.

But you can create an internal vesta link from one dir to another. The linked dir will appear very much like a hard link, more than a soft link.

This trick combines ../SubdirOldVer and ../LinkIntoWorkDir

Let's say you already have /vesta-work/jsmith/pkg/root/dir and you'd like to

% cd /vesta-work/jsmith/pkg/root
% mkdir altroot
% ln -s ../dir altroot

Because, say, some of your tools hard code references to /dir/file and some to /altroot/dir/file

This would create

/vesta-work/jsmith/pkg/root/altroot/dir -> ../dir

Instead you can do

% cd /vesta-work/jsmith/pkg
% mkdir root/altroot
% vadvance
Advancing to /vesta/example.com/pkg/checkout/3/1
% vcheckout -S -N -o checkout/3/1/root/dir -w /vesta-work/jsmith/pkg/root/altroot/dir
/vesta/example.com/pkg
% vadvance
Advancing to /vesta/example.com/pkg/checkout/3/2

Now /vesta-work/jsmith/pkg/root/altroot/dir the work-dir is an internal vesta link to /vesta/example.com/pkg/checkout/3/1/root/dir, an immutable dir. And after the vadvance, /vesta/example.com/pkg/checkout/3/2/root/altroot/dir, an immutable dir, is also an internal vesta link to /vesta/example.com/pkg/checkout/3/1/root/dir the immutable dir.

Then if you were to modify /vesta-work/jsmith/pkg/root/altroot/dir, it would lose it's linkage.