mr: chaining to absolute paths

Adam Spiers vcs-home at
Thu Nov 3 16:13:32 CET 2011

On Wed, Nov 02, 2011 at 05:02:13PM -0400, Joey Hess wrote:
> Adam Spiers wrote:
> > I notice that chaining to absolute paths does not work, e.g.:
> > Is this a feature or a bug?  I would have thought it would be useful
> > to chain to absolute paths.
> Probably because nobody noticed since when you're in ~/foo/bar,
> ~/foo/bar/.mrconfig will be read anyway without chaining.

But ~/foo/bar is just a single repo, so if that's already your current
working directory, wouldn't you just end up invoking git (or whatever)
directly instead?

I'm beginning to suspect that the way I imagine using mr is
fundamentally different to everyone else's way.  Your previous point
about mr working best with locality of reference (i.e. each .mrconfig
being in a parent or near ancestor of the directories containing the
repos it manages) also contributed to this suspicion.  I can
understand how that makes for clean .mrconfig files with short
relative paths in the section headers, but I can't understand how you
could then version control all your .mrconfig files and share them
across computers.  And if you can't, then doesn't that discard a very
large part of the advantage of using mr in the first place?

I guess it would really help me if one or two people would be kind
enough to briefly describe the way they use mr, e.g.

  - How is your home directory structured, i.e. where do your mrconfig
    files and repos live within it, and which mrconfig files point to
    which repos?

  - How many mrconfig files and mr-managed repos do you have?

  - Do you track your mrconfig files with version control?

  - Do you frequently use the -d or -c options?

  - Do you usually cd to a particular directory before running mr, and
    if so, why?

To me, it's important that a tool like mr can act on an arbitrary list
of repositories regardless of my current working directory.  In other
words, I'd rather choose which repositories mr should act on via the
parameters I'm invoking mr with, rather than by cd'ing to a particular
directory, running mr, then potentially having to repeat the cd + mr
steps multiple times.

> And there's rarely a reason to use an absolute path.

I can't see how to accomplish what I need without them.  Hopefully
answers to the above questions would help me realise what I'm missing.

> Fixed in git.

Great, thanks!

More information about the vcs-home mailing list