darcs

Issue 1040 wish: darcs convert with multiple branches

Title wish: darcs convert with multiple branches
Priority wishlist Status given-up
Milestone Resolved in
Superseder Nosy List Serware, darcs-devel, dmitry.kurochkin, kolibrie, kowey, thorkilnaur
Assigned To
Topics Darcs2

Created on 2008-08-28.19:10:34 by kowey, last changed 2017-07-30.23:28:16 by gh.

Messages
msg5783 (view) Author: kowey Date: 2008-08-28.19:10:30
Right now, an obstacle to people upgrading to darcs2 is that having to collapse
branches, convert them, and peel them back apart is too daunting a process.  It
would be nice if darcs convert could be extended
(a) to accept multiple repositories as arguments (treating them as all being
related)
(b) attempt to do the merging itself; timing out after N minutes
(parameterisable) in case of the exponential merge bug
(c) [optionally] peel the branches back apart... at the the very least, I think
darcs convert should create a convert-to-darcs-2 tag for each branch so that
they can be easily peeled apart with obliterate --from-tag

In short, we need to do whatever it takes to make upgrading easy
msg5785 (view) Author: dagit Date: 2008-08-28.19:47:36
On Thu, Aug 28, 2008 at 12:10 PM, Eric Kow <bugs@darcs.net> wrote:
>
> New submission from Eric Kow <eric.kow@gmail.com>:
>
> Right now, an obstacle to people upgrading to darcs2 is that having to collapse
> branches, convert them, and peel them back apart is too daunting a process.  It
> would be nice if darcs convert could be extended
> (a) to accept multiple repositories as arguments (treating them as all being
> related)
> (b) attempt to do the merging itself; timing out after N minutes
> (parameterisable) in case of the exponential merge bug
> (c) [optionally] peel the branches back apart... at the the very least, I think
> darcs convert should create a convert-to-darcs-2 tag for each branch so that
> they can be easily peeled apart with obliterate --from-tag

Would it be possible to skip the merge step and instead use
information from having all the branches available make the lossy
conversions consistent across the branches?  That's probably more of a
question for David as he understands the conversion the best.
msg7402 (view) Author: kowey Date: 2009-03-05.14:57:49
Nathan Gray made this suggestion, following it up with a UI example

------------8<----------------------------------------------
Another thing I am interested in having is the ability, when
converting from a darcs-1 repo to a darcs-2 repo, to specify
already converted darcs-2 repos as a reference for the
conversion.

We have about 15 copies of one of our repos, and rarely are there
more than 5 or so that are completely in sync.  To convert from
darcs-1 to darcs-2 will be almost impossible, unless I can
convert each one on its own.  Currently, this is impossible,
because the conversion is lossy, and may make different decisions
based on which patches are in the repo.

I would like to be able to convert the repo with the most
patches, then for each additional repo, specify the already
converted repo(s).  If a lossy decision is to be made, the
reference repos can be consulted and make the same decisions.

It might also be satisfactory to convert multiple copies of a
repo at the same time, though if I forget about one, I will still
want to convert it later.

------------8<----------------------------------------------
darcs convert source_darcs1_repo new_darcs2_repo --use-reference
already_converted_repo
msg8420 (view) Author: kowey Date: 2009-08-23.18:27:27
I'm not convinced that this is sufficiently well defined yet.  

I'd like somebody to spell out more how this would work, how we'd deal with all
these repositories that have different sets of patches from each other.  We
can't refer to the one source repo for all decisions for example.

Before speccing this out, I'd get a clear picture on why the conversion is lossy
(see FAQ, it's for conflict flattening) and what exactly these "different
decisions" being made are
History
Date User Action Args
2008-08-28 19:10:34koweycreate
2008-08-28 19:47:38dagitsetstatus: unread -> unknown
nosy: + serware
messages: + msg5785
2009-03-05 14:57:52koweysetnosy: + dmitry.kurochkin, simon, thorkilnaur
messages: + msg7402
2009-03-05 14:58:21koweysetnosy: + kolibrie
2009-03-05 14:58:26koweylinkissue1360 superseder
2009-08-10 23:44:07adminsetnosy: - dagit
2009-08-23 18:27:29koweysetstatus: unknown -> needs-reproduction
nosy: kowey, simon, thorkilnaur, kolibrie, dmitry.kurochkin, serware, Serware
messages: + msg8420
2009-08-25 17:41:38adminsetnosy: + darcs-devel, - simon
2009-08-27 14:31:04adminsetnosy: kowey, darcs-devel, thorkilnaur, kolibrie, dmitry.kurochkin, serware, Serware
2009-10-23 22:44:31adminsetnosy: - Serware
2009-10-23 23:27:53adminsetnosy: + Serware, - serware
2017-07-30 23:28:16ghsetstatus: needs-reproduction -> given-up