[Users] path expansion in git/darcs/hg repositories

Eric Seidel eric at eseidel.org
Tue Jun 8 18:01:14 CDT 2010


Hi Roland,

> !TARGET   = $ARR
> !TYPE     = git
> !URL      = git://someurl/Scotch/$2
> AUTH_URL = rhaas3 at someotherurl/Scotch/$2
> !REPO_PATH= ../$2
> !CHECKOUT =
> Scotch/SoundSpeed
> Scotch/Bremsstrahlung

That's an interesting example, but is there really a case where you would need $2 in both URL and REPO_PATH? I'd rather not add anything that could add confusion like that. Also, I think it's better to stick with the nature of distributed versioning systems and clone the whole repo, as opposed to attempting a clone of a sub-directory (I'm assuming the Scotch is the repository in your example).

That being said, I agree that the $[12] expansion should be expanded to cvs and http/ftp.

> !REPO_PATH is handled differently depending on whether it contains $[12] or does not.
> 
> !REPO_PATH = $1/$2
> !CHECKOUT = Scotch/SoundSpeed
> leads to
> ln -s $git_repos_dir/$git_repo/Scotch/SoundSpeed $checkout_item
> 
> but
> 
> !REPO_PATH = Scotch1/SoundSpeed1
> !CHECKOUT = Scotch2/SoundSpeed2
> leads to
> ln -s $git_repos_dir/$git_repo/Scotch1/SoundSpeed1/Scotch2/SoundSpeed2 $checkout_item
> 
> The first variant seems to be the more general one since it does not make assumptions about the repository layout. Currently both versions are used in einsteintoolkit.th (first one for McLachlan, second one for GenericFD).

This variance is actually by design, as you point out we use both methods in einsteintoolkit.th. Is it causing any problems when you add other thorns? It has worked very well for einsteintoolkit.th, and I would prefer not to change the method unless it's causing issues.

Eric


More information about the Users mailing list