From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Random idea about speeding up guix pull Date: Tue, 05 Sep 2017 16:33:53 +0200 Message-ID: <87d175qkoe.fsf@gnu.org> References: <87a82ay0c7.fsf@gnu.org> <6a936a81-683b-6ae3-cabc-79588a97194f@crazy-compilers.com> <87r2vmgmb9.fsf@gnu.org> <216b2dc5-efa3-d052-9f68-7d1792cc98ec@crazy-compilers.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51077) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dpEvR-0005Vd-FZ for guix-devel@gnu.org; Tue, 05 Sep 2017 10:34:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dpEvM-0000Mo-NG for guix-devel@gnu.org; Tue, 05 Sep 2017 10:34:01 -0400 In-Reply-To: <216b2dc5-efa3-d052-9f68-7d1792cc98ec@crazy-compilers.com> (Hartmut Goebel's message of "Tue, 5 Sep 2017 14:23:15 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Hartmut Goebel Cc: guix-devel Hartmut Goebel skribis: > Am 04.09.2017 um 23:56 schrieb Ludovic Court=C3=A8s: >> What it does do is maintain a cached checkout in ~/.cache/guix/pull, >> which makes subsequent pulls much faster. > > Summary ( TL;DR): > > * "guix pull" should use "git fetch master" > * "guix download" we can keep the current behaviour > > I did a series of tests > > * - "fetch" without any argument will fetch *all* data from *all* > branches. > * - "fetch master" only fetches data living on "master", other > branches are ignored > > I compared the data fetched for a repo with status of 6bd1c41e8 > (yesterday 05:29): > > * - "fetch" fetches 1000K > * - "fetch master" fetches 755K > * - "fetch --depth=3D1 master" fetches 588K (but see below) Thanks for the detailed analysis! The problem is that libgit2 doesn=E2=80=99t support shallow clones, and it= =E2=80=99s unclear whether it will support it in the future: https://github.com/libgit2/libgit2/issues/3058 :-/ Ludo=E2=80=99.