From patchwork Wed Jan 1 16:34:44 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ludovic_Court=C3=A8s?= X-Patchwork-Id: 19502 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 4B93B179D5; Wed, 1 Jan 2020 16:36:14 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id DC473179D3 for ; Wed, 1 Jan 2020 16:36:13 +0000 (GMT) Received: from localhost ([::1]:59836 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1imgyj-00017v-0f for patchwork@mira.cbaines.net; Wed, 01 Jan 2020 11:36:13 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:34336) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1imgyb-00017g-53 for guix-patches@gnu.org; Wed, 01 Jan 2020 11:36:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1imgyY-00064q-Em for guix-patches@gnu.org; Wed, 01 Jan 2020 11:36:05 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:59741) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1imgyY-00064f-BL for guix-patches@gnu.org; Wed, 01 Jan 2020 11:36:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1imgyY-0002Dw-8L for guix-patches@gnu.org; Wed, 01 Jan 2020 11:36:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38846] [PATCH 2/4] doc: Move "Commit Access" section from 'HACKING' to the manual. Resent-From: Ludovic =?utf-8?q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 01 Jan 2020 16:36:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38846 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38846@debbugs.gnu.org Cc: Ludovic =?utf-8?q?Court=C3=A8s?= , guix-maintainers@gnu.org Received: via spool by 38846-submit@debbugs.gnu.org id=B38846.15778965048437 (code B ref 38846); Wed, 01 Jan 2020 16:36:02 +0000 Received: (at 38846) by debbugs.gnu.org; 1 Jan 2020 16:35:04 +0000 Received: from localhost ([127.0.0.1]:37477 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imgxb-0002Bu-Uv for submit@debbugs.gnu.org; Wed, 01 Jan 2020 11:35:04 -0500 Received: from eggs.gnu.org ([209.51.188.92]:51680) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imgxX-0002B1-Am for 38846@debbugs.gnu.org; Wed, 01 Jan 2020 11:34:59 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:38143) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1imgxS-0003XN-5C; Wed, 01 Jan 2020 11:34:54 -0500 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=47372 helo=gnu.org) by fencepost.gnu.org with esmtpsa (TLS1.2:DHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1imgxR-00045M-Ju; Wed, 01 Jan 2020 11:34:53 -0500 From: Ludovic =?utf-8?q?Court=C3=A8s?= Date: Wed, 1 Jan 2020 17:34:44 +0100 Message-Id: <20200101163446.5132-2-ludo@gnu.org> X-Mailer: git-send-email 2.24.1 In-Reply-To: <20200101163446.5132-1-ludo@gnu.org> References: <20200101163446.5132-1-ludo@gnu.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * HACKING (Commit Access): Remove. (Contributing): Update URL of the manual. * doc/contributing.texi (Commit Access): New section. (Submitting Patches): Add cross reference. --- HACKING | 47 +--------------------------------- doc/contributing.texi | 59 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+), 46 deletions(-) diff --git a/HACKING b/HACKING index eeea2f6311..36373278f9 100644 --- a/HACKING +++ b/HACKING @@ -17,49 +17,4 @@ See the manual for useful hacking informations, either by running info -f doc/guix.info "Contributing" -or by checking the [[http://www.gnu.org/software/guix/manual/guix.html#Contributing][web copy of the manual]]. - -* Commit Access - -For frequent contributors, having write access to the repository is -convenient. When you deem it necessary, feel free to ask for it on the -mailing list. When you get commit access, please make sure to follow the -policy below (discussions of the policy can take place on guix-devel@gnu.org.) - -Non-trivial patches should always be posted to guix-patches@gnu.org (trivial -patches include fixing typos, etc.). This mailing list fills the -patch-tracking database at [[https://bugs.gnu.org/guix-patches]]; see -"Contributing" in the manual for details. - -For patches that just add a new package, and a simple one, it’s OK to commit, -if you’re confident (which means you successfully built it in a chroot setup, -and have done a reasonable copyright and license auditing.) Likewise for -package upgrades, except upgrades that trigger a lot of rebuilds (for example, -upgrading GnuTLS or GLib.) We have a mailing list for commit notifications -(guix-commits@gnu.org), so people can notice. Before pushing your changes, -make sure to run ‘git pull --rebase’. - -All commits that are pushed to the central repository on Savannah must be -signed with an OpenPGP key, and the public key should be uploaded to your user -account on Savannah and to public key servers, such as -‘keys.openpgp.org’. To configure Git to automatically sign commits, -run: - - git config commit.gpgsign true - git config user.signingkey CABBA6EA1DC0FF33 - -You can prevent yourself from accidentally pushing unsigned commits to -Savannah by using the pre-push Git hook called located at ‘etc/git/pre-push’: - - cp etc/git/pre-push .git/hooks/pre-push - -When pushing a commit on behalf of somebody else, please add a Signed-off-by -line at the end of the commit log message (e.g. with ‘git am --signoff’). -This improves tracking of who did what. - -For anything else, please post to guix-patches@gnu.org and leave time for a -review, without committing anything. If you didn’t receive any reply -after two weeks, and if you’re confident, it’s OK to commit. - -That last part is subject to being adjusted, allowing individuals to commit -directly on non-controversial changes on parts they’re familiar with. +or by checking the [[https://guix.gnu.org/manual/devel/en/html_node/Contributing.html][web copy of the manual]]. diff --git a/doc/contributing.texi b/doc/contributing.texi index fd27f037e9..e6e6ab36c2 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -27,6 +27,7 @@ choice. * Coding Style:: Hygiene of the contributor. * Submitting Patches:: Share your work. * Tracking Bugs and Patches:: Using Debbugs. +* Commit Access:: Pushing to the official repository. @end menu @node Building from Git @@ -827,6 +828,8 @@ Development is done using the Git distributed version control system. Thus, access to the repository is not strictly necessary. We welcome contributions in the form of patches as produced by @code{git format-patch} sent to the @email{guix-patches@@gnu.org} mailing list. +Seasoned Guix developers may also want to look at the section on commit +access (@pxref{Commit Access}). This mailing list is backed by a Debbugs instance, which allows us to keep track of submissions (@pxref{Tracking Bugs and Patches}). Each @@ -1090,3 +1093,59 @@ For example, to list all open issues on @code{guix-patches}, hit: @xref{Top,,, debbugs-ug, Debbugs User Guide}, for more information on this nifty tool! + +@node Commit Access +@section Commit Access + +@cindex commit access, for developers +For frequent contributors, having write access to the repository is +convenient. When you deem it necessary, feel free to ask for it on the +mailing list. When you get commit access, please make sure to follow +the policy below (discussions of the policy can take place on +@email{guix-devel@@gnu.org}). + +Non-trivial patches should always be posted to +@email{guix-patches@@gnu.org} (trivial patches include fixing typos, +etc.). This mailing list fills the patch-tracking database +(@pxref{Tracking Bugs and Patches}). + +For patches that just add a new package, and a simple one, it's OK to +commit, if you're confident (which means you successfully built it in a +chroot setup, and have done a reasonable copyright and license +auditing). Likewise for package upgrades, except upgrades that trigger +a lot of rebuilds (for example, upgrading GnuTLS or GLib). We have a +mailing list for commit notifications (@email{guix-commits@@gnu.org}), +so people can notice. Before pushing your changes, make sure to run +@code{git pull --rebase}. + +All commits that are pushed to the central repository on Savannah must +be signed with an OpenPGP key, and the public key should be uploaded to +your user account on Savannah and to public key servers, such as +@code{keys.openpgp.org}. To configure Git to automatically sign +commits, run: + +@example +git config commit.gpgsign true +git config user.signingkey CABBA6EA1DC0FF33 +@end example + +You can prevent yourself from accidentally pushing unsigned commits to +Savannah by using the pre-push Git hook called located at +@file{etc/git/pre-push}: + +@example +cp etc/git/pre-push .git/hooks/pre-push +@end example + +When pushing a commit on behalf of somebody else, please add a +@code{Signed-off-by} line at the end of the commit log message---e.g., +with @command{git am --signoff}. This improves tracking of who did +what. + +For anything else, please post to @email{guix-patches@@gnu.org} and +leave time for a review, without committing anything (@pxref{Submitting +Patches}). If you didn’t receive any reply after two weeks, and if +you're confident, it's OK to commit. + +That last part is subject to being adjusted, allowing individuals to commit +directly on non-controversial changes on parts they’re familiar with.