all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Eric S. Raymond" <esr@thyrsus.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: schwab@linux-m68k.org, emacs-devel@gnu.org
Subject: Goals for repo conversion day
Date: Sat, 25 Jan 2014 09:06:38 -0500	[thread overview]
Message-ID: <20140125140637.GA5631@thyrsus.com> (raw)
In-Reply-To: <83bnz0cxp8.fsf@gnu.org>

Eli Zaretskii <eliz@gnu.org>:
> I actually don't understand why you are doing a separate new
> conversion, instead of relying on what Andreas already did.  AFAIR,
> there was no serious discussions of this, and certainly no decision
> (except, perhaps, by you).

I am in fact relying on what Andreas already did, not re-lifting the
CVS or Bazaar histories.  But it has some significant problems:

1. Unlifted Bazaar and CVS commit references.

2. CVS commit cliques that should have been coalesced but were not,
   probably because the time window was defaulted too small when parsecvs
   was run.  (Very often these seem to be a pairs of a change and its
   ChangeLog description with an empty comment.)

3. Multiple roots.  Two of the multiples are emacs and elpa, but others 
   are junk lost+found branches which should be carefully inspected and
   then (probably) removed.

4. Obsolete tags (very minor problem, unlike the previous three easily
   fixed in git itself, but I might as well do it while larger cleanups
   are in progress).

5. Unconverted .bzrignores (and possibly .cvsignores) in the history.

Andreas is not to blame for these problems; the tools available to him
were deficient in a number of respects (I had not yet written reposurgeon at
the time of the move to Bazaar). These are all normal issues
which I've seen before in over a dozen large conversions.  

But I want Emacs to have a really high-quality conversion. It is a project
for the ages, one of the great artifacts of hacker culture, and I feel the
history deserves the kind of careful cleaning and restoration one would
give to an Old Master painting.

My quality goals for it include:

(a) Seamless history browsing.  A person looking at the development of
the code should not be distracted by artifacts of VCS changes.  This
means clean, properly unified changesets all the way back, properly
converted ignore files all the way back, and commit references that
are not just opaque cookies left over from previous VCSes.

(b) Information preservation for any future move to another VCS. The
main implication of this goal is not replacing fossil references with
git hashes, as these would present the same problems then that Bazaar
references do now.

(c) Cryptosigning so that future release integrity is protected and
historical release reconstructions can be trusted (that is, assuming
we don't believe the code history has already been corrupted).

(d) Avoidance of metadata representations that are easily stripped or
scrambled if someone gets momentarily forgetful in the future.  This
is why I don't want to rely on lightweight tags or git notes.
-- 
		<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>



  reply	other threads:[~2014-01-25 14:06 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-24 16:29 The git mirror is *very* badly screwed up Eric S. Raymond
2014-01-24 16:42 ` Andreas Schwab
2014-01-24 17:07   ` Eric S. Raymond
2014-01-24 17:22     ` Andreas Schwab
2014-01-24 18:54       ` Eric S. Raymond
2014-01-24 20:03         ` Eric S. Raymond
2014-01-24 21:06         ` Andreas Schwab
2014-01-24 21:27         ` Eli Zaretskii
2014-01-25  6:25           ` Eric S. Raymond
2014-01-25  7:44             ` Eli Zaretskii
2014-01-25 14:06               ` Eric S. Raymond [this message]
2014-01-25 14:42                 ` Goals for repo conversion day Eli Zaretskii
2014-01-25 14:46                   ` Eli Zaretskii
2014-01-25 16:01                   ` Eric S. Raymond
2014-01-25 16:15                     ` Paul Eggert
2014-01-25 17:15                     ` Eli Zaretskii
2014-01-25 21:01                       ` Eric S. Raymond
2014-01-26 17:32                         ` Eli Zaretskii
2014-01-27  0:33                           ` Eric S. Raymond
2014-01-27  5:16                             ` Werner LEMBERG
2014-01-27 16:31                               ` Eli Zaretskii
2014-01-27 17:42                                 ` Werner LEMBERG
2014-01-27 17:54                                   ` Eli Zaretskii
2014-01-27 10:04                             ` Andreas Schwab
2014-01-27 13:22                               ` Eric S. Raymond
2014-01-28  8:14                                 ` Ulrich Mueller
2014-01-28  8:58                                   ` Andreas Schwab
2014-01-28  9:07                                     ` David Kastrup
2014-01-28 15:40                                     ` What to do about the attic files Eric S. Raymond
2014-01-27 16:25                             ` Goals for repo conversion day Eli Zaretskii
2014-01-27 16:28                             ` Bzr's "confusion" between branches and repositories Eli Zaretskii
2014-01-27 16:47                               ` Andreas Schwab
2014-01-27 16:53                                 ` Eli Zaretskii
2014-01-27 17:15                                   ` Eli Zaretskii
2014-01-25 19:32                   ` Goals for repo conversion day Glenn Morris
2014-01-25 16:09                 ` Andreas Schwab
2014-01-25 17:01                 ` Thien-Thi Nguyen
2014-01-25 19:54                   ` Eric S. Raymond
2014-01-25 22:08                     ` Thien-Thi Nguyen
2014-01-26  3:24                       ` Eric S. Raymond
2014-01-25 21:57             ` The git mirror is *very* badly screwed up Stefan Monnier
2014-01-25 23:27               ` Eric S. Raymond

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140125140637.GA5631@thyrsus.com \
    --to=esr@thyrsus.com \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=schwab@linux-m68k.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.