commit: 30c77a7b4c4beab3e93ab32756a2047c6e2d0d77 Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Sat Oct 14 18:27:48 2017 +0000 Commit: Göktürk Yüksek <gokturk <AT> gentoo <DOT> org> CommitDate: Wed Jan 3 04:38:30 2018 +0000 URL: https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=30c77a7b
ebuild-maintenance/git: Add new section on repoman commit/full ebuild-maintenance/git/text.xml | 43 ++++++++++++++++++++++++++++++++++------- 1 file changed, 36 insertions(+), 7 deletions(-) diff --git a/ebuild-maintenance/git/text.xml b/ebuild-maintenance/git/text.xml index 59f1833..dfc3d5b 100644 --- a/ebuild-maintenance/git/text.xml +++ b/ebuild-maintenance/git/text.xml @@ -112,12 +112,46 @@ the historical commits after the initial git commit. <body> <subsection> +<title>Committing and verifying commits</title> +<body> + +<p> +The recommended way of committing to the Gentoo repository is to use <c>repoman +commit</c>. It automatically performs the necessary QA checks on the package +being committed and has other features helping with the Gentoo workflow. +However, it is currently limited to creating a single commit to a single +package. +</p> + +<p> +For any other use case, <c>git commit</c> and other git commands need to be +used. The valid uses of git include: +</p> + +<ul> +<li>creating commits spanning multiple packages and/or multiple areas +of the Gentoo repository (eclasses, licenses, profiles…),</li> +<li>amending a commit created via <c>repoman commit</c> with additional files +or fixups,</li> +<li>combining multiple commits created via <c>repoman commit</c> using <c>git +rebase</c>.</li> +</ul> + +<p> +Whenever repoman is not used to commit, you need to manually verify all +packages affected by the commit using <c>repoman full</c>. Since repoman +is not aware of staged changes, please make sure that all files are included +in the commit. +</p> + +</body> +</subsection> + +<subsection> <title>Git Commit Policy</title> <body> <ul> -<li>Always run <c>repoman scan</c> before you commit.</li> -<li>Please run <c>repoman full</c> before you commit.</li> <li>Always test that <path>package.mask</path> is okay by doing <c>emerge --pretend mypkg</c> before you commit and check that it doesn't contain any conflicts.</li> @@ -128,11 +162,6 @@ or that is masked, then first commit the revised <path>package.mask</path> and/o then commit the ebuild, patches and <uri link="::ebuild-writing/misc-files/metadata">metadata.xml</uri> all in <b>one</b> go .</li> -<note> Although the set of changes in a single git commit is atomic, and -combining <path>package.mask</path>/license changes with ebuild changes in a -single commit wouldn't break atomicity, it is not currently possible to do so -using <c>repoman commit</c>.</note> -<!-- See: https://bugs.gentoo.org/show_bug.cgi?id=390651 --> </ul> </body>