Gentoo Archives: gentoo-dev

From: Tobias Klausmann <klausman@g.o>
To:
Cc: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Gentoo git workflows and the stabilization/keywording process
Date: Fri, 19 Sep 2014 14:04:05
Message-Id: 20140919140357.GA38151@skade.schwarzvogel.de
In Reply to: Re: [gentoo-dev] Gentoo git workflows and the stabilization/keywording process by Tom Wijsman
1 Hi!
2
3 On Fri, 19 Sep 2014, Tom Wijsman wrote:
4 > On Thu, 18 Sep 2014 19:39:08 +0200
5 > Tobias Klausmann <klausman@g.o> wrote:
6 >
7 > > AIUI, we try to avoid merge conflicts, unless the merge is a
8 > > meaningful integration of divergent processes.
9 > >
10 > > However, one aspect of how ebuilds are written these days will
11 > > cause a non-trivial amount of merge commits that are not actually
12 > > useful in that sense.
13 >
14 > The concept of rebasing your commits has been invented for this. In the
15 > less common case that multiple people change the keywords, a manual
16 > three way merge is a breeze; taking into consideration that maintainers
17 > should be aware of KEYWORDS and other recent changes to their packages.
18
19 As I pointed out, getting the right code into the tree is not the
20 problem here. It is extra work over the current way of doing it
21 (since I need to deal with a local commit that can't be ff'd or
22 rebased as git is very line-oriented.
23
24 On top of the extra work, there have been several mentions that
25 only meaning ful merge-commits are wanted in the tree (or not
26 wanted at all). AIUI, avoiding them in the keywording/stabilizing
27 phase is currently very difficult, unless we split KEYWORDS into
28 separate lines or find another mechanism (like having the
29 maintainer/keyword-requestor do all the edits after the archs
30 sign off on them).
31
32 I'd be delighted to hear a simpler solution that only involves
33 doing the semantic merge (like we do now with CVS).
34
35 And at least in my case, collisions during keywording are fairly
36 common, and will be even more so with git since fetch/pull are
37 slower than for a CVS subdir (since git checks the whole tree for
38 local changes, not just the current subtree, AIUI).
39
40 Again, correct me if I'm wrong. I've been using git for ~4 years,
41 but only in single-developer mode. And even there I managed to
42 make a mess of repo histories :-/ Fortunately, nobody cares about
43 my stuff.
44
45 Regards,
46 Tobias

Replies