From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Move to git is imminent - awaiting Stefan's approval Date: Tue, 07 Jan 2014 18:11:43 +0200 Message-ID: <83iotvsreo.fsf@gnu.org> References: <52CB2AB0.4080505@alice.it> <877gachfza.fsf@igel.home> <52CBD5CC.4020804@alice.it> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1389112024 23538 80.91.229.3 (7 Jan 2014 16:27:04 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 7 Jan 2014 16:27:04 +0000 (UTC) Cc: schwab@linux-m68k.org, emacs-devel@gnu.org To: Angelo Graziosi Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jan 07 17:27:11 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1W0ZUk-0006Bu-N1 for ged-emacs-devel@m.gmane.org; Tue, 07 Jan 2014 17:27:10 +0100 Original-Received: from localhost ([::1]:41587 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W0ZUk-00071K-98 for ged-emacs-devel@m.gmane.org; Tue, 07 Jan 2014 11:27:10 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:55262) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W0ZG3-00022R-9R for emacs-devel@gnu.org; Tue, 07 Jan 2014 11:12:04 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W0ZFy-0002D9-06 for emacs-devel@gnu.org; Tue, 07 Jan 2014 11:11:59 -0500 Original-Received: from mtaout22.012.net.il ([80.179.55.172]:54058) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W0ZFx-0002D1-Ob for emacs-devel@gnu.org; Tue, 07 Jan 2014 11:11:53 -0500 Original-Received: from conversion-daemon.a-mtaout22.012.net.il by a-mtaout22.012.net.il (HyperSendmail v2007.08) id <0MZ100A00GVXA700@a-mtaout22.012.net.il> for emacs-devel@gnu.org; Tue, 07 Jan 2014 18:11:52 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout22.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MZ100A29GZR9P20@a-mtaout22.012.net.il>; Tue, 07 Jan 2014 18:11:52 +0200 (IST) In-reply-to: <52CBD5CC.4020804@alice.it> X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 X-Received-From: 80.179.55.172 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:167622 Archived-At: > Date: Tue, 07 Jan 2014 11:24:12 +0100 > From: Angelo Graziosi > Cc: emacs > > >> $ du -s emacs-trunk/ > >> 126M emacs-trunk/ > >> > >> instead the git repository has dimension > >> > >> $ du -s emacs.git/ > >> 1.1G emacs.git/ > > > > By default git downloads the history of all branches. You can use > > --single-branch to only clone a single branch. This is the default if > > you create a shallow clone. > > David Kastrup wrote: > > > For the build? No. git clone has the following options: > > > > --depth > ... > > --[no-]single-branch > ... > > OK, trying > > $ git clone --single-branch git://git.savannah.gnu.org/emacs.git emacs.git > > the local repository has dimension 1.1G, so probably I need a more > explicit example... The command you tried is correct, it's just that it doesn't save too much disk space because the trunk has almost all of the revisions. > Instead, trying > > $ git clone --depth 1 git://git.savannah.gnu.org/emacs.git emacs.git > > the local repository has dimension 160M which is a little greater than > my current BZR (checkout --lightweight) repository (126M), but acceptable... This is not recommended at all, as such a shallow repository is severely limited: you cannot clone from it, nor push from or to it. You also have almost no history, and git does not support bzr-like operation whereby commands in lightweight checkouts that need history information go to the server. So you will be unable to walk through history and bisect. > Suppose now I want identify which "revision" introduced a bug. I am able > to do this with a binary search using the BZR command > > $ bzr up -r ARG > > How can I do this with the "minimal" clone done with GIT? You don't, see above. With a full repository, or at least one that was cloned with --single-branch, the equivalent of "bzr up" with git is "git checkout", and the revision which you want is specified by either is SHA1 signature or relatively, as in HEAD~20.