Gentoo Archives: gentoo-project

From: Rich Freeman <rich0@g.o>
To: gentoo-project@l.g.o
Subject: [gentoo-project] Re: Call for Council Agenda Items - 14 Oct 2014
Date: Wed, 01 Oct 2014 17:30:59
Message-Id: CAGfcS_k3gY9Q=gJZcpXtXFnxyk59L=d6hFX4D=5b6tdKQC4Qcg@mail.gmail.com
1 On Tue, Sep 30, 2014 at 10:08 PM, Rich Freeman <rich0@g.o> wrote:
2 >
3 > If you'd like to contribute another agenda item, please reply to this email.
4 >
5
6 I'll offer up a further topic for the git migration.
7
8 I propose that we're basically ready to go with the git migration. We
9 have a proposed workflow, we have a reasonable migration path for
10 history, and a "perfect" migration process for the current tree, and
11 we now have back-end scripts for adding metadata, manifests, etc and
12 creating an rsync tree.
13
14 There are open questions around things like news and changelogs
15 already on the agenda.
16
17 I'm not quite sure how to frame the question I'd like the council to
18 answer, but I'd really like to get this down to, "is anything left or
19 can we do this already?"
20
21 The biggest concerns I see as pending are changelogs which have
22 already been hashed out, and whether we need a better migration of the
23 cvs history before we go. Changelogs have already been hashed out so
24 I'll summarize where migration of history stands.
25
26 Right now the migration process generates a full cvs history in git,
27 with a number of caveats:
28 1. CVS tracks history at the file level, git at the tree level. The
29 migration process tries to match up corresponding changes, but this is
30 far from perfect. So, many commits will contain non-matching
31 manifests and files, which means manifests will not pass. The only
32 place we can be sure there won't be manifest issues (other than those
33 already in cvs) is in the final commit, which matches the active tree.
34
35 2. CVS keywords are a mess in general. There are a bunch of
36 situations which cause them to not match. This could be improved, but
37 I'm really wondering if we should bother.
38
39 I'd propose that we really make the requirement be that the final tree
40 with manifests matches. We're actually going to ditch the manifests
41 anyway, and likely even header keywords and changelogs (likely in
42 later commits). Many projects have migrated to git without setting a
43 goal of a perfect history migration, and our heavy use of keywords and
44 manifests makes our case particularly tricky if we want a "perfect"
45 migration.
46
47 Now that git has the "replace" function I'd suggest that we view the
48 tree moving forward and the historical tree as separate problems. We
49 can migrate the active tree to git and move forward, and then we can
50 make a pretty useful git migration for those who want to look
51 backwards. If anybody wants to further improve the historical tree
52 they could do so at any time - all the code is open source and we can
53 make the data available. However, I just don't know much interest
54 there really is in a "perfect" historical migration and certainly
55 there isn't an army of volunteers working to improve cvs2svn/etc. In
56 fact, half the issues I do run into involve digging up 10-year-old
57 mailing list posts since that was when most of the rest of the world
58 was interested in ditching cvs.
59
60 Obviously the actual migration requires some coordination with
61 infra/etc, but I'd like to shift the bias towards action and ask "why
62 not now?" If there are good reasons to wait, let's discuss them,
63 agree whether they're issues, and then work out a plan to resolve
64 them.
65
66 --
67 Rich

Replies

Subject Author
Re: [gentoo-project] Re: Call for Council Agenda Items - 14 Oct 2014 "Michał Górny" <mgorny@g.o>