Re: How to cope with patches sanely
Am Freitag, den 01.02.2008, 00:01 +1100 schrieb Ben Finney:
> Charles Plessy <email@example.com> writes:
> > But I am still missing something: how can we get the benefits of
> > using a patching strategy, that is to break up changes into logical
> > components, with the VCS strategy?
> Make commits to the VCS branch for the package, at the same level of
> granularity (or finer) as you would write individual patches. Be sure
> to describe the commit with a good message, just as you would comment
> a patch file. With any decent modern VCS, each individual commit can
> be inspected at any later date, including generating a patch against
> another arbitrary revision.
And people should check the VCS history just to get the current "patch"?
I mean: Maybe you forgot something in this first commit, maybe parts of
the patch must be dropped over time or other places must be patched too.
Then you expect people to read the whole VCS history just to know, how
the current patch looks like?
This doesn't sound like a works-by-design approach. It sounds too
complicated with too much work for people being interested in the
package (wanting to take it or help).
> Indeed, this is how I generate most patches for submitting via email:
> make the change to a working tree in a VCS branch, then invoke the VCS
> to generate a diff against the upstream revision (even if I was the
> one who committed that upstream revision myself).
Although I do not agree to your suggestion, this is also the way how I
create patches (mostly for upstream). However, this is a patch *you*
were working on and then you of course understand it. But people not
creating that patch should be easily retrieve and understand it too.
Then pure VCS commits are a bad approach to present patches, especially
if a path is done over several commits. It's sometimes even hard to
follow upstream by this approach.
So I personally think, this idea is definitely not applicable for Debian
package maintenance. I have experiences with this way back to when I
used cvs-buildpackage. It has been much more comfortable for me to save
changes as separated patches. And I personally think, that the fact,
that many people use the separated-patch approach (using quilt, dpatch
or CDBS simple-patchsys) shows, that this is an applicable approach and
not something "evil".