Dne 11. 10. 19 v 23:34 Adam Williamson napsal(a):
On Fri, 2019-10-11 at 17:10 -0400, Randy Barlow wrote:
> On Sat, 2019-10-05 at 02:38 +0200, Kevin Kofler wrote:
>> No. Resolving conflicts implies that you need to do an actual merge,
>> NOT a
>> fast forward. Fast-forwarding means that I am shipping the SAME
>> commit on
>> all branches, so the changelog must be identical (unless I play games
>> with
>> %if in the changelog, which is not going to happen).
> The same commit is in all branches, there's just also a merge commit.
> Subsequent commits that don't conflict do fast-forward.
>
>> In addition, resolving conflicts is extra work compared to a
>> conflict-free
>> merge or ideally a fast-forward.
> It's less work than the mental overhead of working in a spec file with
> %if statements.
That seems like a personal call, really. I very much like being able to
keep branches in sync without merge commits as it means I can do stuff
like:
for i in el6 epel7 f29 f30 f31 master; do fedpkg switch-branch $i; git
pull; git merge master; fedpkg push; fedpkg build --nowait; done
This is all nice, but it makes changes on all packages in Fedora a lot
harder. Therefore removing no longer used cruft etc is nearly
impossible. It prohibits Fedora to move forward. In general, %if
statements are causing just technical dept.
Also, during prepartion of RHEL8, I saw a lot of places where there were
conditions such as `%if 0%{?rhel} == 7` and in my experience, these were
not helpful at all. From condition like this, nobody can tell if it was
applied due to RHEL6 or RHEL7 or RHEL8. One typically need to start from
scratch and just test if it works or not.
Vít
and I don't find it particularly onerous to deal with sensible
conditionals. It all depends a lot on what you prefer as an individual
and exactly how much difference there needs to be between branches.