[darcs-users] Are there external difinitions in darcs?

Yuval Kogman nothingmuch at woobling.org
Thu Mar 3 00:09:32 UTC 2005


On Wed, Mar 02, 2005 at 15:19:07 -0800, Alexey N. Solofnenko wrote:
> Hello,
> 
>  We are using them with ClearCase a lot and I just found that 
> Subversion supports them:
> 
> http://scm.sipfoundry.org/svndoc/ch07s03.html

Someone, I think Tom Moertel noted that he noticed a darcs
convention of constructing a repo like this:

	$ mkdir repo
	$ cd repo
	$ darcs init
	$ mkdir MyProject

and keeping all the files under MyProject inside the repo.

Since patches are pretty much freeform- you can move them in and out
of repos, and if they can be applied darcs is happy, youc an just
pull patches from different repositories with different underlying
directory structures in this manner.

The patches won't conflict since they are not bound to chronology,
but rather to topology.

I think this is only going to be a source of confusion, though.
Where do you send which patch? Which is the default repo? etc, etc.

This is, as I gather, the actual feature in external properties.
Using darcs as an underlying backend to a wrapped system you could
certainly whip up something like external defs very quickly.

In my opinion, however, darcs itself should not support these. It is
not really in sync with the distributed system ideas, or the
principals of simplicity darcs excels in.

As a site maintained and site enforced policy I reckon it could be
useful, and possibly it should be in some contrib dir somewhere on
darcs.net.


FYI, and perhaps not on topic, here has also been some discussion
about nesting actual darcs repos. That may also be relevant, one the
issues clear up. Maybe this is interesting to you?


The way I gather, the necessity of such a feature is so that you can
pull once, from several repos, without confusing the overall
structure of the working dir. Since in darcs everything is a repo,
and you can pull from ~other_user/working_dir, or http://mainline,
or whatnot, this is against the overall concept.

Perhaps instead you want to put in ~/bin or equiv a pull_all
command, which is something like

	for repo in `find ~ -type d -name _darcs`; do
		cd `dirname repo`;
		darcs pull
	done

At the bottom line: this doesn't seem like something darcs is meant
to tackle. I doubt it will be a real feature any time soon.

-- 
 ()  Yuval Kogman <nothingmuch at woobling.org> 0xEBD27418  perl hacker &
 /\  kung foo master: /me groks YAML like the grasshopper: neeyah!!!!!!

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.osuosl.org/pipermail/darcs-users/attachments/20050303/543e82b3/attachment.pgp 


More information about the darcs-users mailing list