[darcs-users] Darcs' Direction (from re: GHC and Darcs)
Max Battcher
me at worldmaker.net
Thu Jul 31 02:38:37 UTC 2008
Patrick Waugh wrote:
> Shouldn't this really be called the [darcs-developers] list?
There was a merge a short while back of the two lists due to low traffic
on the darcs-users list at the time.
> One thing I think would be very helpful to people trying to learn to
> use darcs is example work flows.
Some of that already exists in the darcs manual and on the darcs wiki,
perhaps you should spend a bit more time reading through both of them.
But someone could probably write an entire book on the subject or
Darcs-based workflows (and there was at least one Wikibooks attempt to
do just that).
> Moreover, the flow is different. It would be really helpful for
> example to show how one creates a "master" respository, then
> pulls/pushes to your working repos. And, then how one might actually
> create a "branch".
Part of the fun of a distributed VCS like Darcs is that there are
several possible flows... There's no one "perfect setup", and instead
several workflows with various amounts of suitability dependent upon
your project and your team's needs.
For instance, you don't need a "master" repository to use darcs.
Instead you might make every developer's repository group-readable (via
a lightweight HTTP server on each dev machine, perhaps, or existing
samba shares) and follow a "pull" mentality where each developer pulls
from every other developer as features are written. You can even do
that without fully sharing every repository using what are called "darcs
context files", which you can find more about in the Wiki or if you
google it you will find an article I wrote on the subject...
> We had hoped to keep our "master" repos on our shared web server which
> is backed up for us etc. However, we don't want to have to ftp into
> the site everytime to copy up the repos. So, we looked at the add-on
> darcs-server (which I realize isn't your project), but we have been
> unable to get it to work with either version of darcs, and the author
> is unreachable by the email on his site.
Depending on what you are doing with said "master" repositories, you
don't need anything complicated like darcs-server, either. You could
have your shared web server updated automatically from a "real master"
using an rsync/ftp in a darcs apply posthook or a cron job, as just two
common options. You could accept patches into your "real master" from
email rather than HTTP if you can't get darcs on the shared web server,
but can setup a simple email account for a harder to get to "master
server". Most patches to darcs itself are sent by email.
As an example, I replicate my "master" public-ready repositories to S3,
Amazon's cloud storage service, which should mean that someone
attempting a darcs get of one of my repositories via http will get a
very fast, multiply-redundant download from Amazon's cloud services,
which also acts as a simple backup of the same repositories. Amazon's
S3 is just a simple "stupid" file store and does not run darcs, I'm
simply copying the files that changed... Then I just encourage people
using my public repositories to darcs send me patches to the email
address that darcs will automatically pick up. (I look forward to doing
cool things with the new ability in darcs 2 to have darcs send make an
HTTP POST, once I get my systems standardized on darcs 2.)
--
--Max Battcher--
http://www.worldmaker.net/
More information about the darcs-users
mailing list