1 |
On 08/11/2015 01:49 PM, Rich Freeman wrote: |
2 |
> On Tue, Aug 11, 2015 at 5:12 AM, Kent Fredric <kentfredric@×××××.com> wrote: |
3 |
>> On 11 August 2015 at 20:57, Tobias Klausmann <klausman@g.o> wrote: |
4 |
>>> |
5 |
>>> The cat/pn rule is tricky anyway: what if one commit touches 100 |
6 |
>>> packages? Or should that be split into 100 commits for easier |
7 |
>>> partial rollback? |
8 |
>> |
9 |
>>>> **if the change affects multiple directories**, but is mostly related to a particular subsystem, then prepend the subsystem which best reflects the intention (e.g. you add a new license, but also modify profiles/license_group |
10 |
> |
11 |
> ++ |
12 |
> Go read the proposal. This email chain simplifies it but people have |
13 |
> already thought of most of those corner cases already. |
14 |
> |
15 |
> However, I do want to touch on this bit from the previous email: "Or |
16 |
> should that be split into 100 commits for easier partial rollback?" |
17 |
> |
18 |
> Each commit should be one logical change. If you stabilize 100 |
19 |
> separate packages in an afternoon, there should be 100 commits. If |
20 |
> you stabilize kde-5.0 there probably should be one commit that touches |
21 |
> 100 packages. Likewise if you rename a package and fix 100 references |
22 |
> to it in other packages, that should probably also be a single commit |
23 |
> (but I'd separate renaming the package from any other changes to the |
24 |
> content of the package). |
25 |
> |
26 |
> That is actually one of the advantages of git. You can stabilize |
27 |
> kde-5 and a user doing an rsync will either get kde 4.x or the full |
28 |
> kde 5, and nothing in-between. |
29 |
> |
30 |
> But, one commit in the final tree should still remain one logical change. |
31 |
> |
32 |
|
33 |
Right. |
34 |
|
35 |
In addition, we just took the freedom to add the clause "all commits |
36 |
must be repoman-valid": |
37 |
https://wiki.gentoo.org/index.php?title=Gentoo_git_workflow&diff=352978&oldid=352858 |
38 |
|
39 |
That will be necessary too for the CI work mgorny is doing and will also |
40 |
make bisecting and cherry-picking easier. |
41 |
|
42 |
That is: if splitting up a commit into several makes repoman fail on |
43 |
some of them, it probably should be one commit instead (or you have to |
44 |
reconsider the order you commit stuff in... e.g. first add the license |
45 |
and then the package). |
46 |
|
47 |
|
48 |
But we are drifting OT again. |