[Dune-devel] How should patches be submitted?
Ansgar Burchardt
burchardt at igpm.rwth-aachen.de
Mon Oct 6 18:41:29 CEST 2014
Hi,
I was wondering how people who cannot commit should best submit
patches. Git provides many ways to do so:
A) Use git-send-email
This will generate a mail per commit which can then be applied by
forwarding the mail to git-am.
Plus points:
- Easy to use as a submitter (provided one-time setup for Git to be
able to send mail).
- Allows commenting on patches: just reply to the mail and the patch
should be right there.
Minus points:
- Not easy to use as a committer when the mail program does not
support forwarding mails to programs (or a web mailer is used).
- Potentially nosy when large amounts of patches are sent.
Example: http://lists.dune-project.org/pipermail/dune-devel/2014-September/001064.html
B) Use git-format-patch and attach patches to mail
This is slighty more annoying to do as a submitter as it requires
writing a mail by hand. I'm also not sure if all mail programs allow
quoting the changes (diff) in a reply.
C) File a bug and attach patches there
Like (B), but more work for the submitter. For trivial patches
(typoes), I don't like doing this. I'm also not sure how well this
works for larger changes.
D) Point to an external Git repository & branch ("pull request")
Ask the committer to fetch from a remote Git repository and merge one
branch from there. As far as I understand, this is how development of
the Linux kernel works.
Requesting a pull can be largely automated (git-request-pull); this
again requires a one-time setup of Git.
Plus points:
- Easy to use as submitter and committer.
Minus points:
- Not easy to comment on the patch.
Example: http://lists.dune-project.org/pipermail/dune-devel/2014-October/001135.html
E) GitHub pull requests
Use pull requests on github.com.
Plus points:
- Easy to use.
- Allow commenting on individual commits (and diffs) as well as on
the merge request as a whole
Minus points:
- Tied to the (non-free) github.com infrastructure.
Personally as a submitter I prefer (A) or (D) for small patches to
projects. (E) is also very popular and GitHub has many attractive
features, but is tied to a non-free service. (C) is okay for bugs, but
too much overhead for trivial stuff. (B) is just a more annoying (for
me) variant of (A).
I think it would also be nice if the preferred way to submit patches
could be documented somewhere on the web site.
Ansgar
More information about the Dune-devel
mailing list