From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS22989 209.51.188.0/24 X-Spam-Status: No, score=-3.9 required=3.0 tests=AWL,BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H2, SPF_HELO_PASS,SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id 537AD1F8C6 for ; Sat, 4 Sep 2021 08:34:11 +0000 (UTC) Received: from localhost ([::1]:37496 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mMR7q-0003Z1-D5 for normalperson@yhbt.net; Sat, 04 Sep 2021 04:34:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:42742) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mMR7m-0003YM-Cn for bug-gnulib@gnu.org; Sat, 04 Sep 2021 04:34:06 -0400 Received: from uggla.sjd.se ([2001:9b1:8633::107]:37476) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mMR7j-0000X2-TL for bug-gnulib@gnu.org; Sat, 04 Sep 2021 04:34:05 -0400 DKIM-Signature: v=1; a=ed25519-sha256; q=dns/txt; c=relaxed/relaxed; d=josefsson.org; s=ed2101; h=Content-Type:MIME-Version:Message-ID:Date: Subject:To:From:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description; bh=nO7fHVGJHsh4wxZEgiLlEOQ4VNrzskv4/comydlA1lk=; t=1630744443; x=1631954043; b=9obC5iV2JSzJdXPUpJ/pBaZsRbEEOeOG55amnaWthifNPRE uOIsBKi7MKHP9jxvIVfS2/WfTPAcntWKXVdZ8BQ==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=josefsson.org; s=rsa2101; h=Content-Type:MIME-Version:Message-ID:Date: Subject:To:From:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description; bh=nO7fHVGJHsh4wxZEgiLlEOQ4VNrzskv4/comydlA1lk=; t=1630744443; x=1631954043; b=lo3y+gsBOmZPk8Z+X5NlyUO5PcVHSDkoAsY+rS6xM8TevG8 0qD0IoAme+gbbIX3MfuQ7g7A0OPdRY09e/CMWNQKMGOW2OjwkJ+kHpluuB2rQ79g24fFYy238WFDY xUQecXO5xfqiQrpWNi/Hnoc1wbSH+OmMw5qPMQQpTM1ug12waRPCEsMa3oQ2lneu3jH2vBLzQPlQ3 zRW1jnYje1T+l3FeeieBa7Dg+CSaD/wYAjbd0TpeJlbEcjKKxE5dfW/KhhbGcVOJ39A6dncyu/lMV hJYAARsJMic///6vUdzGEyetS/mj/JBURwfwF2iaAwNVblHsYA9dW5XjZ/Jkf7cNdOGuB+Pt2jTWk CnWJpWYaUkBanf1xBJLkNSDjDa/+pznW1ND2hPskoueP1l/csGIF9QGl34pXPruBsKlAe81qJrkI4 oOkIg5MydD4+QQhy1uvZgYn6; Received: from [2001:9b1:41ac:ff00:7c69:3425:79:1e5a] (port=41386 helo=latte) by uggla.sjd.se with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mMR7h-00012a-4e for bug-gnulib@gnu.org; Sat, 04 Sep 2021 08:34:01 +0000 X-Hashcash: 1:22:210904:bug-gnulib@gnu.org::isb9Kni1Yrxx9gwj:5dII To: bug-gnulib@gnu.org Subject: [PATCH] doc: Improve help related to bootstrap script. OpenPGP: id=B1D2BD1375BECB784CF4F8C4D73CF638C53C06BE; url=https://josefsson.org/key-20190320.txt Date: Sat, 04 Sep 2021 10:33:59 +0200 Message-ID: <87czpo20zs.fsf@latte.josefsson.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Received-SPF: pass client-ip=2001:9b1:8633::107; envelope-from=simon@josefsson.org; helo=uggla.sjd.se X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: bug-gnulib@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Gnulib discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnulib-bounces+normalperson=yhbt.net@gnu.org Sender: "bug-gnulib" Reply-to: Simon Josefsson From: Simon Josefsson via Gnulib discussion list --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Hi. It seems a lot of projects that use gnulib is using our bootstrap script, but documentation is fairly hidden in the manual. This is just a small improvement to the current section. /Simon * doc/gnulib-tool.texi (VCS Issues): Make title more positive, s/Issues/Integration/. Some more bootstrap-related hints, including changing suggested submodule path from .gnulib to gnulib as this seems to be more wide-spread. =2D-- ChangeLog | 8 ++++++++ doc/gnulib-tool.texi | 43 ++++++++++++++++++++++++++----------------- 2 files changed, 34 insertions(+), 17 deletions(-) diff --git a/ChangeLog b/ChangeLog index f9e398602..015f20b1e 100644 =2D-- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2021-09-04 Simon Josefsson + + doc: Improve help related to bootstrap script. + * doc/gnulib-tool.texi (VCS Issues): Make title more positive, + s/Issues/Integration/. Some more bootstrap-related hints, + including changing suggested submodule path from .gnulib to gnulib + as this seems to be more wide-spread. + 2021-09-04 Paul Eggert =20 intprops: fix minor doc glitches diff --git a/doc/gnulib-tool.texi b/doc/gnulib-tool.texi index b35c71366..7f66c4248 100644 =2D-- a/doc/gnulib-tool.texi +++ b/doc/gnulib-tool.texi @@ -875,7 +875,7 @@ functions will not be affected. =20 =20 @node VCS Issues =2D@section Issues with Version Control Systems +@section Integration with Version Control Systems =20 If a project stores its source files in a version control system (VCS), such as CVS, Subversion, or Git, one needs to decide which files to commit. @@ -938,36 +938,45 @@ add because they were missing. @end itemize =20 Gnulib includes the file @file{build-aux/bootstrap} to aid a developer =2Din using this setup. Furthermore, in projects that use git for =2Dversion control, it is possible to use a git submodule containing the =2Dprecise commit of the gnulib repository, so that each developer =2Drunning @file{bootstrap} will get the same version of all =2Dgnulib-provided files. The location of the submodule can be chosen to =2Dfit the package's needs; here's how to initially create the submodule =2Din the directory @file{.gnulib}: +in using this setup. You would copy this file and add it to your +project's VCS. It can be customized using @file{bootstrap.conf} which +is also put under VCS in your project. Read the script for further +information, and look at how other projects are using it (see links in +@url{https://git.savannah.gnu.org/gitweb/?p=3Dgnulib.git;a=3Dblob;f=3Duser= s.txt;hb=3DHEAD}). + +In projects that use git for version control, it is possible to use a +git submodule containing the precise commit of the gnulib repository, so +that each developer running @file{bootstrap} will get the same version +of all gnulib-provided files. The location of the submodule can be +chosen to fit the package's needs; here's how to initially create the +submodule in the directory @file{gnulib}: =20 @smallexample =2D$ dir=3D.gnulib =2D$ git submodule add -- https://git.savannah.gnu.org/git/gnulib.git $dir =2D$ git config alias.syncsub "submodule foreach git pull origin master" +$ git submodule add -- https://git.savannah.gnu.org/git/gnulib.git gnulib @end smallexample =20 @noindent =2DThereafter, @file{bootstrap} can run this command to update the +Thereafter, @file{bootstrap} will run this command to update the submodule to the recorded checkout level: =20 @smallexample =2Dgit submodule update --init $dir +$ git submodule update --init gnulib @end smallexample =20 @noindent =2Dand a developer can use this sequence to update to a newer version of =2Dgnulib: +Use this sequence to update to a newer version of gnulib: + +@smallexample +$ git submodule update --remote gnulib +$ git add gnulib +$ ./bootstrap --bootstrap-sync +@end smallexample + +If multiple submodules are used, the following may be useful: =20 @smallexample +$ git config alias.syncsub "submodule foreach git pull origin master" $ git syncsub =2D$ git add $dir =2D$ ./bootstrap @end smallexample =20 @item =2D-=20 2.30.2 --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iIoEARYIADIWIQSjzJyHC50xCrrUzy9RcisI/kdFogUCYTMvdxQcc2ltb25Aam9z ZWZzc29uLm9yZwAKCRBRcisI/kdFonVtAQDm0N1rT5853uL1xx/3CU70o077Oz3q RtiAUnyOZfGigwEA9Y69ymblExB3ovxd6yWSYCEeNvY5FB6vBZO1MFGckw0= =I6wy -----END PGP SIGNATURE----- --=-=-=--