提交 435eff14 编写于 作者: A Andrea Bolognani

docs: Add best-practices.rst

These guidelines should already be familiar to people who have
contributed to other open source projects, so it doesn't make much
sense for them to be so prominent. Move them to a separate page.
Signed-off-by: NAndrea Bolognani <abologna@redhat.com>
Reviewed-by: NDaniel P. Berrangé <berrange@redhat.com>
上级 a50a83b3
==============
Best practices
==============
These are a few guidelines to keep in mind when submitting patches
to libvirt: following them will maximise the chance of your patches
being reviewed in a timely manner and being accepted into libvirt
with minimal back-and-forth.
- Discuss any large changes on the mailing list first. Post
patches early and listen to feedback.
- In your commit message, make the summary line reasonably short
(60 characters is typical), followed by a blank line, followed
by any longer description of why your patch makes sense. If the
patch fixes a regression, and you know what commit introduced
the problem, mentioning that is useful. If the patch resolves a
bugzilla report, mentioning the URL of the bug number is
useful; but also summarize the issue rather than making all
readers follow the link. You can use 'git shortlog -30' to get
an idea of typical summary lines.
- Split large changes into a series of smaller patches,
self-contained if possible, with an explanation of each patch
and an explanation of how the sequence of patches fits
together. Moreover, please keep in mind that it's required to
be able to compile cleanly (**including**
``make check`` and ``make syntax-check``) after each
patch. A feature does not have to work until the end of a
series, but intermediate patches must compile and not cause
test-suite failures (this is to preserve the usefulness of
``git bisect``, among other things).
There is more on this subject, including lots of links to
background reading on the subject, on `Richard Jones' guide to
working with open source
projects <http://people.redhat.com/rjones/how-to-supply-code-to-open-source-projects/>`__.
......@@ -7,9 +7,6 @@ Contributor guidelines
General tips for contributing patches
=====================================
#. Discuss any large changes on the mailing list first. Post
patches early and listen to feedback.
#. Official upstream repository is kept in git
(``https://libvirt.org/git/libvirt.git``) and is browsable
along with other libvirt-related repositories (e.g.
......@@ -21,16 +18,6 @@ General tips for contributing patches
The libvirt release process automatically pulls the latest
version of each translation file from zanata.
#. In your commit message, make the summary line reasonably short
(60 characters is typical), followed by a blank line, followed
by any longer description of why your patch makes sense. If the
patch fixes a regression, and you know what commit introduced
the problem, mentioning that is useful. If the patch resolves a
bugzilla report, mentioning the URL of the bug number is
useful; but also summarize the issue rather than making all
readers follow the link. You can use 'git shortlog -30' to get
an idea of typical summary lines.
#. Contributors to libvirt projects **must** assert that they are
in compliance with the `Developer Certificate of Origin
1.1 <https://developercertificate.org/>`__. This is achieved by
......@@ -39,17 +26,6 @@ General tips for contributing patches
attests that the contributor has read the above lined DCO and
agrees with its statements.
#. Split large changes into a series of smaller patches,
self-contained if possible, with an explanation of each patch
and an explanation of how the sequence of patches fits
together. Moreover, please keep in mind that it's required to
be able to compile cleanly (**including**
``make check`` and ``make syntax-check``) after each
patch. A feature does not have to work until the end of a
series, but intermediate patches must compile and not cause
test-suite failures (this is to preserve the usefulness of
``git bisect``, among other things).
#. Make sure your patches apply against libvirt GIT. Developers
only follow GIT and don't care much about released versions.
......@@ -72,8 +48,3 @@ General tips for contributing patches
libvirt developers, such as code refactoring, don't belong in
the release notes. Note that ``docs/news.xml`` should be
updated in its own commit not to get in the way of backports.
There is more on this subject, including lots of links to
background reading on the subject, on `Richard Jones' guide to
working with open source
projects <http://people.redhat.com/rjones/how-to-supply-code-to-open-source-projects/>`__.
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册