From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Karl Fogel Newsgroups: gmane.emacs.devel Subject: Re: Switching to bzr: what Emacs developers should know? Date: Tue, 11 Aug 2009 14:20:08 -0400 Message-ID: <871vni2ox3.fsf@canonical.com> References: <874osi6zpe.fsf@bzg.ath.cx> <28c656e20908081151h55a4b566v4cfc7c49c5ca2a37@mail.gmail.com> <87eiriaopw.fsf@canonical.com> <8763cua0za.fsf@notengoamigos.org> <873a7y8jjh.fsf@canonical.com> <87ocqmb587.fsf@notengoamigos.org> Reply-To: Karl Fogel NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1250014829 11054 80.91.229.12 (11 Aug 2009 18:20:29 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 11 Aug 2009 18:20:29 +0000 (UTC) Cc: emacs-devel@gnu.org, CHENG Gao To: Jason Earl Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Aug 11 20:20:22 2009 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1MavxN-0000D7-UI for ged-emacs-devel@m.gmane.org; Tue, 11 Aug 2009 20:20:22 +0200 Original-Received: from localhost ([127.0.0.1]:53153 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MavxM-0003hb-AR for ged-emacs-devel@m.gmane.org; Tue, 11 Aug 2009 14:20:20 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MavxH-0003hG-3P for emacs-devel@gnu.org; Tue, 11 Aug 2009 14:20:15 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MavxG-0003h2-6r for emacs-devel@gnu.org; Tue, 11 Aug 2009 14:20:14 -0400 Original-Received: from [199.232.76.173] (port=54770 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MavxG-0003gz-1K for emacs-devel@gnu.org; Tue, 11 Aug 2009 14:20:14 -0400 Original-Received: from adelie.canonical.com ([91.189.90.139]:60014) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MavxF-00075k-OE for emacs-devel@gnu.org; Tue, 11 Aug 2009 14:20:14 -0400 Original-Received: from hutte.canonical.com ([91.189.90.181]) by adelie.canonical.com with esmtp (Exim 4.69 #1 (Debian)) id 1MavxE-0005VJ-8n; Tue, 11 Aug 2009 19:20:12 +0100 Original-Received: from cpe-72-225-235-182.nyc.res.rr.com ([72.225.235.182] helo=kfogel-work) by hutte.canonical.com with esmtpsa (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.69) (envelope-from ) id 1MavxE-0007Ge-0c; Tue, 11 Aug 2009 19:20:12 +0100 In-Reply-To: <87ocqmb587.fsf@notengoamigos.org> (Jason Earl's message of "Tue, 11 Aug 2009 12:00:40 -0600") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 3) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:114087 Archived-At: Jason Earl writes: > I ran the same test as Cheng and it only to me 24m, which is more > reasonable. I am guessing that there might be network issues. The > emacs-testing branches take less time, primarily because there is a lot > less information to move. > > One thing to note, the bzr: method takes longer than the http: method > for initial checkout because the machine hosting bzr.notengoamigos.org > is such an old piece of crap. My results are below (this is on a machine with a pretty good pipe; I don't remember exactly how good, but enough to be slashdotted and not notice): First I fetched via bzr://, like so: $ mkdir new-emacs $ cd new-emacs $ bzr init-repo --2a . Shared repository with trees (format: 2a) Location: shared repository: . $ time bzr branch bzr://bzr.notengoamigos.org/emacs-testing/trunk/ emacs Branched 96940 revision(s). real 47m37.010s user 2m33.398s sys 0m5.480s $ Then I fetched the tarballs: $ time wget http://bzr.notengoamigos.org/emacs-testing.tar.gz [...] 100%[======================================>] 233,333,654 1.90M/s in 66s [...] real 1m6.515s user 0m0.304s sys 0m3.272s $ time wget http://bzr.notengoamigos.org/emacs-testing.tar.lzma [...] 100%[======================================>] 230,333,027 3.65M/s in 77s [...] real 1m17.292s user 0m0.272s sys 0m2.836s $ Then I tried this (still in the same shared repository): $ time bzr branch http://bzr.notengoamigos.org/emacs-testing/trunk/ \ emacs-trunk-via-http Branched 96940 revision(s). real 0m21.611s user 0m8.117s sys 0m1.136s $ Good -- it used the already-fetched local revisions, as it should. Next I tried fetching via HTTP in a fresh (unpopulated) shared repository: $ cd .. $ mkdir emacs-new-2 $ cd emacs-new-2 $ bzr init-repo --2a . $ time bzr branch http://bzr.notengoamigos.org/emacs-testing/trunk/ \ emacs-trunk-via-http Branched 96940 revision(s). real 9m41.867s user 7m3.190s sys 0m5.880s $ Interesting. I expected that to take about as long as fetching the gz or lzma, but it took longer, though still not nearly as long as with bzr://. In summary, we're looking at: bzr branch bzr://... ==> 47 minutes bzr branch http://... ==> 10 minutes wget http:/.../{gz,lzma} ==> 1 minute > There is no question that the fastest way to get in business is to > download the pre-made repositories and start from there. Yup. I was thinking we'd package up a shared repository as a .gz (or .lzma) file. The method would be: $ wget http://bzr.savanna.gnu.org/.../emacs-shared-repos.gz $ tar zxvf emacs-shared-repos.gz $ cd emacs-shared-repos (or whatever it's called) $ cd trunk $ bzr pull (pull down new revs into trunk) $ bzr branch trunk my-branch (start working by branching trunk) Seem sane to you? -Karl