1 |
On Sun, Sep 14, 2014 at 11:42 AM, hasufell <hasufell@g.o> wrote: |
2 |
> Patrick Lauer: |
3 |
>>> Are we going to disallow merge commits and ask devs to rebase local |
4 |
>>> changes in order to keep the history "clean"? |
5 |
>> |
6 |
>> Is that going to be sane with our commit frequency? |
7 |
>> |
8 |
> |
9 |
> You have to merge or rebase anyway in case of a push conflict, so the |
10 |
> only difference is the method and the effect on the history. |
11 |
> |
12 |
> Currently... CVS allows you to run repoman on an outdated tree and push |
13 |
> broken ebuilds with repoman being happy. Git will not allow this. |
14 |
> |
15 |
|
16 |
Repoman is going to be a challenge here. With cvs every package is |
17 |
its own private repository with its own private history and cvs only |
18 |
cares if there is a collision within the scope of a single file. |
19 |
|
20 |
With git your commit is against the whole tree. So, even though it is |
21 |
trivial to merge, independent commits against two different packages |
22 |
do collide and need to be rebased or merged. |
23 |
|
24 |
Repoman can run against a single package fairly quickly, so assuming |
25 |
we still allow that we could do a pull/rebase/repman/push workflow |
26 |
even if people are doing commits every few minutes. On the other |
27 |
hand, if you're doing a package move or eclass change or some other |
28 |
change that affects 300 packages, just doing the rebase might cost you |
29 |
a few minutes (due to actual collisions), and running repoman against |
30 |
the whole thing before doing a push isn't going to be practical. |
31 |
Somebody doing a tree-wide commit would almost certainly have to run |
32 |
repoman before the final rebase/merge, push that out, and then maybe |
33 |
do another repoman after-the-fact and maybe clean up any issues. For |
34 |
all intents in purposes that is what we're doing today anyway, since |
35 |
repoman+cvs doesn't offer any kind of tree-wide consistency guarantees |
36 |
unless you're checking out based on a timestamp or something like |
37 |
that. |
38 |
|
39 |
-- |
40 |
Rich |