From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 31FA913873B for ; Sun, 2 Mar 2014 18:32:48 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id B7BBCE0B32; Sun, 2 Mar 2014 18:32:42 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id AEF88E09F2; Sun, 2 Mar 2014 14:55:29 +0000 (UTC) Received: from pomiot.lan (77-254-67-143.adsl.inetia.pl [77.254.67.143]) (using SSLv3 with cipher ECDHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: mgorny) by smtp.gentoo.org (Postfix) with ESMTPSA id 253D833FAE4; Sun, 2 Mar 2014 14:55:27 +0000 (UTC) Date: Sun, 2 Mar 2014 15:55:15 +0100 From: =?UTF-8?B?TWljaGHFgiBHw7Nybnk=?= To: Cc: Subject: [gentoo-dev-announce] New clone type and local git mirror support in git-r3 Message-ID: <20140302155515.50bb1783@pomiot.lan> Reply-To: Organization: Gentoo X-Mailer: Claws Mail 3.9.3 (GTK+ 2.24.22; x86_64-pc-linux-gnu) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo development announcement list X-BeenThere: gentoo-dev-announce@lists.gentoo.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; boundary="Sig_/14UW4ZhSWsOQLI2hemw7PUq"; protocol="application/pgp-signature" X-Archives-Salt: 994158eb-5cd0-40d1-b6a9-069696dacef8 X-Archives-Hash: 0022ebf26df4b3998c792bde370fa7f8 --Sig_/14UW4ZhSWsOQLI2hemw7PUq Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hello, users and developers. I've just committed a large patch set that improves the compatibility and usability of git-r3.eclass. The two major highlights are: 1. the semi-working and problematic shallow clone support has been replaced by more generic and better designed EGIT_CLONE_TYPE system, 2. local git mirror support has been added for people that are using live ebuilds on multiple Gentoo systems. First of all, if you have EGIT_NONSHALLOW set somewhere, you can remove it. The shallow clones are no longer the default, and this variable is not used anymore. Instead, you may want to set EGIT_CLONE_TYPE in make.conf to one of the three supported clone types: 'mirror', 'single' (the default) or 'shallow'. The 'mirror' mode clones all branches & tags in the remote repository, making the local copy suitable for further cloning or reuse as a git mirror. The 'single' mode clones only the requested branch or tag, along with complete history (and tags that point on fetched commits). This mode is the default since it provides all the advantages of git while avoiding fetching unnecessary branches. The 'shallow' mode tries to clone the minimum number of objects necessary. It is very space-efficient yet may cause problems (and therefore ebuilds may override it). Since it doesn't fetch the complete branch history, some features won't be available (like 'git describe' won't be able to find an earlier tag). The ebuilds that do not support shallow clones may use complementary EGIT_MIN_CLONE_TYPE variable to enforce another type of clones. For example, all ebuilds using Google Code git repositories will need to set EGIT_MIN_CLONE_TYPE=3Dsingle due to server limitations. If shallow clones cause only minor inconveniences (like non-pretty version number that doesn't cause any more issues), developers are encouraged not to force 'larger' clones. Since setting EGIT_CLONE_TYPE is considered an expert feature, developers are not required to retroactively test their ebuilds with shallow clones. Instead, they can wait till one of the users using it reports an issue. Setting a local git mirror is pretty straightforward. You need to share the 'git3-src' directory used to store local clones (preferably with EGIT_CLONE_TYPE=3Dmirror) via one of the supported git transports, and then set EGIT_MIRROR_URI to the URI corresponding to that directory. For example, if you used the HTTP transport and aliased the git3-src directory to /git, your EGIT_MIRROR_URI would look like: EGIT_MIRROR_URI=3Dhttp://localserver/git/ Any questions or problems shall arise, please don't hesitate to reply to this mail, to gentoo-dev@. --=20 Best regards, Micha=C5=82 G=C3=B3rny --Sig_/14UW4ZhSWsOQLI2hemw7PUq Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQJ8BAEBCgBmBQJTE0ZXXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2REJCMDdDQzRGMERBRDA2RUEwQUZFNDFC MDdBMUFFQUVGQjQ0NjRFAAoJELB6GurvtEZOHh4P/j8/I3Cz4/8AkttGEzfJ6h7R wkIm9L54rVv1FMF2ONsI2cTgx7ha7iKRsKCUvXNN1B+K5EXMzOatqS85AG8JdBYE BNgXCcbg8buK+b/faNRoAGqmdTsQXiDshIs3AfZFKcO20qcBPzb5GIo0oDN5fATs OizQyn5ztE8mckXd0eS27vEUAoRRrB4SHC1hhfd3jY7FRng0kiqiiCzZkCCuh1/Z 3F3OxkcIQkWRlmjK6lxrhOewPVPXs568iVNXeWedxgIRM7Jke90/7lle3PfbYytK kz1rwZDi1v/Ynf/uE+V972sdiI0/tS/XnsTqvKQi4GCSuQoVuHCXXK8AFOZeNn7o WZZYffT9N//sc73RPAfI/UkMN7fFFJKss6Exun7kjiplab9TSU+Y2EAYFbURh63G Glld/Li8tu74qPqRaz6sPQjG3nuZUwld+bddFzdV8CbBsNsW4xNRBzEJXHnMrpld xI/ObmXGZ/HhREOq8zfEfaAtZIJUXk6BjFptFfZzdt0CPuySrpgVDp/lFvUGIvAg clH4jZKVRUfAtJBQllcWB/P5nHzMl47RdfyZNuRpDz93/Cz+SDvDOF4IIBDEXVP+ us+uH+lwf4LFEBVFG9cDJi+RE6XKD+bnY9j6iMVXgLt9n5XUo1NTYfNAaiawosRF Yuo0BGA1S4OExyu3PNEo =TJIn -----END PGP SIGNATURE----- --Sig_/14UW4ZhSWsOQLI2hemw7PUq--