From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Jason Earl Newsgroups: gmane.emacs.devel Subject: Re: bzr repository ready? Date: Sun, 22 Nov 2009 13:32:50 -0700 Message-ID: <87aayenvv1.fsf@notengoamigos.org> References: <87vdhfpil2.fsf@red-bean.com> <87einvxy9c.fsf@red-bean.com> <20091118230952.GB908@muc.de> <87my2jw05z.fsf@red-bean.com> <83skc9pbf7.fsf@gnu.org> <87iqd5vw5n.fsf@red-bean.com> <877htl53tc.fsf@telefonica.net> <87ws1ku7zd.fsf@red-bean.com> <87hbso4s13.fsf@telefonica.net> <83aaygoy90.fsf@gnu.org> <87vdh36d48.fsf@telefonica.net> <831vjrptha.fsf@gnu.org> <87einr63b6.fsf@telefonica.net> <83y6lzo9e7.fsf@gnu.org> <871vjr750o.fsf@uwakimon.sk.tsukuba.ac.jp> <87zl6fnnu2.fsf@notengoamigos.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1258922021 21548 80.91.229.12 (22 Nov 2009 20:33:41 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 22 Nov 2009 20:33:41 +0000 (UTC) Cc: ofv@wanadoo.es, stephen@xemacs.org, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Nov 22 21:33:24 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 1NCJ7a-0004nq-Qo for ged-emacs-devel@m.gmane.org; Sun, 22 Nov 2009 21:33:23 +0100 Original-Received: from localhost ([127.0.0.1]:53137 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NCJ7a-00033j-6v for ged-emacs-devel@m.gmane.org; Sun, 22 Nov 2009 15:33:22 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NCJ7T-00031Q-4r for emacs-devel@gnu.org; Sun, 22 Nov 2009 15:33:15 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NCJ7N-0002yw-Na for emacs-devel@gnu.org; Sun, 22 Nov 2009 15:33:13 -0500 Original-Received: from [199.232.76.173] (port=38106 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NCJ7N-0002yf-Iu for emacs-devel@gnu.org; Sun, 22 Nov 2009 15:33:09 -0500 Original-Received: from mailout18.yourhostingaccount.com ([65.254.253.148]:35859) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NCJ7K-00018H-KF; Sun, 22 Nov 2009 15:33:06 -0500 Original-Received: from mailscan13.yourhostingaccount.com ([10.1.15.13] helo=mailscan13.yourhostingaccount.com) by mailout18.yourhostingaccount.com with esmtp (Exim) id 1NCJ7K-0006Ae-4b; Sun, 22 Nov 2009 15:33:06 -0500 Original-Received: from impout03.yourhostingaccount.com ([10.1.55.3] helo=impout03.yourhostingaccount.com) by mailscan13.yourhostingaccount.com with esmtp (Exim) id 1NCJ7F-0000y3-Qf; Sun, 22 Nov 2009 15:33:01 -0500 Original-Received: from authsmtp11.yourhostingaccount.com ([10.1.18.11]) by impout03.yourhostingaccount.com with NO UCE id 8LZ11d0060EKrUA0000000; Sun, 22 Nov 2009 15:33:01 -0500 X-EN-OrigOutIP: 10.1.18.11 X-EN-IMPSID: 8LZ11d0060EKrUA0000000 Original-Received: from c-174-52-132-45.hsd1.ut.comcast.net ([174.52.132.45] helo=jearl-netbook) by authsmtp11.yourhostingaccount.com with esmtpa (Exim) id 1NCJ7F-0003PF-Jk; Sun, 22 Nov 2009 15:33:01 -0500 Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAAAAAByaaZbAAAABGdBTUEAALGPC/xhBQAAAAFz UkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlw SFlzAAASmwAAEpsB4JJZDAAAAAl2cEFnAAAAMAAAADAAzu6MVwAAAaFJREFUSMe1VtuxxSAIzIz9 2Iyl2Aj1bBX0k5+LrwjGjJyPy2ROwtGNBJbVCwwwy1UNoOL3f+SBxkj15Lr4NsboN24DWMZxYQNA TjGmjC1gswJiqBbpDeANYMwXBFyAFB5L7ADMBcoSDgAFBSDHR2tA8ABMSB4AawB76pAnILsKx2lm 1VfpgUi3kxrySylRHdmQj40Jva2/jl8EY3Twv/phhsC9nIQR0hnAOUptYsL3RxvAk+YIH2AWsvTH GYBgKn8GaPYm5jNANaCQ8WfAzyH9x0crFfGl9X4QVdg8gEqN2KjBHi6V/iBq6iyAxTqd+Yvupwai VwM9LZkxQ6otihmS6H+mHlK5URwi0UQgWxHoxS5JagBSed7IzJRCallS2pg2QsamcGUFNSHgLZUv augJIUualv1Bv6+yVat1oeMq92s/mBBWQJH7dQX7CnpvWWs/4CazpHlB2RR1BFSzNGdIaTbbLil8 U76BKKU0GztapXP3C78bNYQ6MTQybY8OkIaITf9HPzyHkXE4YXs4mf5VDz+jAepj3RTQ3Ubv0SPy 9AcCrfKh0TBgvgAAACV0RVh0Y3JlYXRlLWRhdGUAMjAwOS0wOC0yN1QxNjoxMTozMy0wNjowMFPN ssMAAAAldEVYdG1vZGlmeS1kYXRlADIwMDktMDgtMjdUMTY6MTE6MzMtMDY6MDAMfMT3AAAAAElF TkSuQmCC User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) X-EN-UserInfo: f8a5a3c49e1c4664ba81facb1022c4a9:67ddfe7aeaee6d1ea5b788d961d42633 X-EN-AuthUser: jearl@notengoamigos.org X-EN-OrigIP: 174.52.132.45 X-EN-OrigHost: c-174-52-132-45.hsd1.ut.comcast.net X-detected-operating-system: by monty-python.gnu.org: Genre and OS details not recognized. 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:117505 Archived-At: Eli Zaretskii writes: >> From: Jason Earl >> Cc: Eli Zaretskii , =?utf-8?Q?=C3=93scar?= Fuentes >> , emacs-devel@gnu.org >> Date: Sat, 21 Nov 2009 22:13:57 -0700 >> >> "Stephen J. Turnbull" writes: >> >> > But Bazaar branches *cannot* at present be colocated; they *cannot* >> > share a working tree. That means that if you do a "bzr branch" for a >> > one-line change, you have to do a "make bootstrap" to test. >> > EEEEEEeeeeeewwwwww. >> >> That's not entirely true. I keep a "workspace" checkout in my >> repository and then "bzr switch" between the branches that I am >> working on. It probably doesn't work exactly like git, but it >> certainly allows you to switch between branches without doing a make >> bootstrap. Commits go to the right place, the branch nick gets set >> correctly, switching is fast, and make does the right thing. > > But that means you already bootstrapped each branch at least once, > right? Or did I misunderstand the functionality of "bzr switch" > and/or how you use it? No, you can simply bootstrap the "workspace" checkout. In fact, I usually create the rest of the branches either with the --no-tree option or in a repository initialized with --no-trees. So the workspace checkout is the only directory that even has any sources. So for example, you simply create a repository like so: bzr init-repo --no-trees emacs Then cd into the repository and create a mirror branch of mainline like so: cd emacs cvs branch http://bzr.savannah.gnu.org/r/emacs/trunk/ trunk This will create a directory that is a branch, but the branch will not have any files in it. Now let's imagine that you want to do some actual hacking in a branch that you call dev. You would create the branch like so: bzr branch trunk dev Finally you create a workspace directory. This is the only directory that actually has any sources in it. bzr co --lightweight dev workspace >From within the workspace directory you can change branches with the switch command. For example in the root of the workspace directory you would type: bzr switch ../trunk to switch to the trunk. This setup allows you to switch between as many branches as you might care to make without having to do a make bootstrap in each, and indeed without having to waste space on duplicate (or nearly duplicate) copies of the source. Of course, if you prefer, you can also use bzr almost precisely as you use CVS today. Jason