[darcs-users] bookmarks

Phil Frost indigo at bitglue.com
Thu Mar 31 04:48:38 UTC 2005

On Wed, Mar 30, 2005 at 10:32:56PM +0000, Csaba Henk wrote:
> When I first looked at "alternative" VCS software, I preferred the arch
> way over the darcs way in respect of the notion of a repo.
> I thought that the software saves me headache by maintaining a registry
> of known repos, and I don't have to care about where my scratch/working
> copies are, I can always use a global, protocol-neutral namespace to
> locate what I'm looking for (and then enter a
> "checkout/hack/commit/forget working copy" session).
> However, later on I realized that I -- and guess most of us -- don't
> organize my work as illustrated above. Rather I have a permanent working
> copy and that's what I look up first when I wanna do some work. Thus the
> repo registry rather seems to be a constrained and ad-hoc mapping
> beetwen the filesystem namespace (which tends to be the primary
> reference) and the artificial repo namespace. This consideration (among
> others) made me prefer darcs. Hello darcs.
> However, again, what's in the above paragraph is not 100% true. That is,
> it is true when I working locally. But when I want to commit (push) to a
> remote repo, the url and the user at host:dir naming schemes are ad hoc,
> again. When I work locally, it turns out immediately by interactive
> shell usage (powered by readline) whether I keep my projects under
> ~/projects, ~/projects_2005 or ~/projects-2005. But I might like not to
> start an interactive session on the remote machine, or look up the exact
> url again; and anyway, I'm likely more familiar with my local filesystem
> layout than a remote one or with the dusty corners of the web.
> So, what do you think of supporting a lightweight, non-constraining form
> of archive registry, namely bookmarks?
> You could just do "darcs bookmark <repo loc> <nick>", "darcs bookmark
> -l" to list bookmarks (and have some other options, like deletion), and
> you could use the nick as reference being equivalent to the full location
> during ordinary interaction.
> Thoughts, opinions?
> Csaba

bash has this feature.

put this in ~/.bashrc:

    <nick>='<repo loc>'

start a new bash, or reload the rc in a new one:

    source ~/.bashrc

and run darcs like so:

    darcs push $nick

One could argue that it would be better to attach these data to the
repo, but different people access the same repos in different ways. For
example, my project has a master repository which collects stable
changes from all developers. I access it over ssh because I'm a
developer and have an account on that box. However, others access it
over http because they don't have a shell account or write access.

I don't think protocol independent names for repos is terribly useful.
When I say, "our master repo", or really even "the repo", everyone knows
I'm talking about a very specific repo, and also knows how to access it.
With arch, one must initially tell it how to access the repo anyway, so
it's only useful if you somehow remember the name of repo but not how to
access it. Since the names must be unique, they must be pretty long, and
thus they are hard to remember anyway. So, I'd say this feature is a lot
of complication for very little gain.

More information about the darcs-users mailing list