[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Real Life hits: need to give up packages for adoption



Christoph Haas wrote:
Darcs looks like a nice competitor but has some issues regarding
checking in changes automatically (might as well be my ignorance but it
sounds like I need weird scripts and a .procmailrc to merge changes
automatically).

You don't *need* them; you can choose to do that, but you can also choose otherwise. There are two ways to give contributors "commit access" in darcs. (I'm using quotes because in Darcs, "commit" is an ambiguous term and is usually avoided; I'm using it here to mean incorporating a change in a special project-wide shared repository.)

***************

Way One
-------

Set up an email address which feeds messages to darcs. Darcs is capable of checking GnuPG signatures in these mails and only allowing known keys to "commit". The contributor "commits" by using the "darcs send" command.

The upside is that the contributors do not need shell access to the server. The downside is that setting this up is not very easy.

Way Two
-------

Give contributors shell access to the server; make the shared repository writable by all these accounts. The contributor "commits" by using the "darcs push" command.

The upside is that this is very easy to set up. The downside is that you need to give contributors shell access.

(I suppose a restricted shell is possible.  I haven't investigated this.)

***************

I personally prefer Way Two. I have tried Way One, but it isn't worth the trouble most of the time.

What makes darcs special in my opinion is its support for second-class contributors: anybody can "darcs send" stuff to the project mailing list (if you've set stuff up for this; it's not very hard), the email is both human- and computer-readable: it can be eyeballed and it can be fed directly to darcs to incorporate the change to the local repository (from which it can be "committed" to the shared repository, if this is desired and one has the necessary "commit" privs).



Reply to: