Received: from spf3.us4.outblaze.com (spf3.us4.outblaze.com [205.158.62.25]) by sdf.lonestar.org (8.12.10/8.12.10) with ESMTP id i9PG85Mf027896 for ; Mon, 25 Oct 2004 16:08:05 GMT Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) by spf3.us4.outblaze.com (Postfix) with ESMTP id 6AF60538EC for ; Mon, 25 Oct 2004 16:07:49 +0000 (GMT) Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1CM7VX-0006XN-PX for migo@homemail.com; Mon, 25 Oct 2004 12:15:43 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.33) id 1CM7V0-0006Tn-8o for gnu-arch-users@gnu.org; Mon, 25 Oct 2004 12:15:10 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.33) id 1CM7Uz-0006TQ-If for gnu-arch-users@gnu.org; Mon, 25 Oct 2004 12:15:09 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1CM7Uz-0006TG-Dt for gnu-arch-users@gnu.org; Mon, 25 Oct 2004 12:15:09 -0400 Received: from [129.255.60.186] (helo=ct.radiology.uiowa.edu) by monty-python.gnu.org with esmtp (Exim 4.34) id 1CM7NE-0001oz-Vw for gnu-arch-users@gnu.org; Mon, 25 Oct 2004 12:07:09 -0400 Received: from [192.168.1.11] (12-217-241-0.client.mchsi.com [12.217.241.0]) by ct.radiology.uiowa.edu (8.11.6/8.11.6) with ESMTP id i9PG77310832 for ; Mon, 25 Oct 2004 11:07:07 -0500 Message-ID: <417D24A9.6070904@johnmeinel.com> Date: Mon, 25 Oct 2004 11:07:05 -0500 From: John Meinel User-Agent: Mozilla Thunderbird 0.8 (Windows/20040913) X-Accept-Language: en-us, en MIME-Version: 1.0 Cc: gnu-arch-users@gnu.org Subject: Re: [Gnu-arch-users] Re: Automatic Disconnected Operation References: In-Reply-To: X-Enigmail-Version: 0.86.0.0 X-Enigmail-Supports: pgp-inline, pgp-mime X-BeenThere: gnu-arch-users@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: a discussion list for all things arch-ish List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1454256760==" Sender: gnu-arch-users-bounces+migo=homemail.com@gnu.org Errors-To: gnu-arch-users-bounces+migo=homemail.com@gnu.org Status: RO Content-Length: 3697 Lines: 117 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --===============1454256760== Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enig2C2AD2E3C747EF6BCAA4E4B0" This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig2C2AD2E3C747EF6BCAA4E4B0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit John Goerzen wrote: > On 2004-10-25, Stefan Monnier wrote: > >>>Lately I hve been poking around with darcs a bit, and the one really >>>nice thing about it is that it can automatically work "disconnected". >> >>>Here's how that would work in darcs: >> >>>1. I do a darcs get to download the repository >>>2. I hack around, using "darcs record" to commit each change >>> Changes are only saved locally. >>>3. When I have a network connection again, I "darcs push" to upload >>> my changes to the server. >> >>How does it handle the case where someone else has committed patches to the >>same branch in the mean time. Of course it can try to reorder those patches >>using its patch-algebra (which is quite handy in this particular case), but >>what if there's a real conflict? > > > I don't know, but I bet someone in here knows the answer. I suspect it > would generate an error if it couldn't handle the situation > automatically. > > If I knew someone else commits to the repository on the network (in my > case, I know that nobody else does), I would probably do a darcs pull > before my darcs push to grab any changes and integrate them. > I believe in the case of darcs, each checked out copy contains the full revision history. Because darcs doesn't really do patch ordering (it does dependencies, but not the same as Arch's always increasing numbers), it works a little differently. I'm not sure how darcs names things to prevent conflicts. But each working copy keeps track of what patches have been applied versus any other working tree. I think really what is desired here is a local archive, and then some way to "star-merge" each change back into the main archive, preserving the changesets. As a semi-clumsy way to do it: $ NETWORK="network-archive/project... " $ LOCAL="local-archive/local-project..." $ tla tag -S $NETWORK $LOCAL $ tla get $LOCAL proj $ cd proj hack hack $ tla commit hack hack $ tla commit ... $ cd .. $ tla get $NETWORK netproj $ cd netproj $ for p in `tla revisions $LOCAL`; do tla star-merge $p $NETWORK tla cat-archive-log $p > `tla make-log` tla commit done I haven't tested this, and it seems pretty reasonable to talk to Aaron Bentley to have something like this checked into fai as a helper routine. Kind of a "merge all of my changes, one-by-one". John =:-> --------------enig2C2AD2E3C747EF6BCAA4E4B0 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (Cygwin) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFBfSSpJdeBCYSNAAMRAkYrAKDAB3yecz9nC/xCHWwv3T1JRgggBgCghF49 pXhuK4ihI5RUJgFalc/7miI= =EZ5A -----END PGP SIGNATURE----- --------------enig2C2AD2E3C747EF6BCAA4E4B0-- --===============1454256760== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Gnu-arch-users mailing list Gnu-arch-users@gnu.org http://lists.gnu.org/mailman/listinfo/gnu-arch-users GNU arch home page: http://savannah.gnu.org/projects/gnu-arch/ --===============1454256760==--