Gentoo Archives: gentoo-dev

From: rindeal <dev.rindeal@×××××.com>
To: gentoo-dev@l.g.o
Cc: m.j.everitt@×××.org, kentfredric@×××××.com
Subject: Re: [gentoo-dev] Repo mirror & CI project news: 'stable' gentoo branch, new repo stats, faster CI
Date: Sun, 05 Jun 2016 17:35:19
Message-Id: CANgLvuDQ5OQ+Yc3LcD6NoLpNfgQxykTg-X0+HtARP-yzJOmLxQ@mail.gmail.com
In Reply to: Re: [gentoo-dev] Repo mirror & CI project news: 'stable' gentoo branch, new repo stats, faster CI by Kent Fredric
1 On 5 June 2016 at 19:13, Kent Fredric <kentfredric@×××××.com> wrote:
2 > On 6 June 2016 at 05:09, rindeal <dev.rindeal@×××××.com> wrote:
3 >> It is not, unless CI filters the broken commits in some miraculous
4 >> way. With the current approach, both stable and master branch will
5 >> contain the pollution of broken commits + their fixes, instead of
6 >> having good commits only.
7 >
8 >
9 > Doing that is of course, impossibly hard without having every
10 > committer publish to their own branch, and having the "master" built
11 > by *cherry* picking commit series that are "known good".
12 >
13 > Its doable, but the complexity it entails is just way more than is
14 > suitable for the gentoo workflow, and is likely to create more
15 > problems than it solves.
16 >
17 > The "no bad commits" requires there to be at last *some* branch
18 > somewhere that is constantly not-fast-fowardwardable, and at least one
19 > branch that serves as a synchronization point with strictly linear
20 > history.
21
22 It's not hard at all. Developers have branches (personal, feature/bug
23 specific, ...), before merging to master they do a rebase+force push,
24 let the CI check it, and if it passes they're allowed to merge it. No
25 cherry-picking involved. Master is then always clean and happy. I'm
26 not sure how well it scales, but for the 100-150 commits/day the tree
27 sees currently, it should be doable.

Replies