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: Locks on the Bzr repository Date: Sat, 21 Aug 2010 22:56:27 +0300 Message-ID: <83pqxboi38.fsf@gnu.org> References: <4C6D56DB.7040703@swipnet.se> <4C6D8EC5.7040901@swipnet.se> <4C6E1F0A.7070506@swipnet.se> <837hjlr78p.fsf@gnu.org> <87zkwhtws5.fsf@uwakimon.sk.tsukuba.ac.jp> <83tymppj62.fsf@gnu.org> <871v9t8klf.fsf@uwakimon.sk.tsukuba.ac.jp> <83lj81pazq.fsf@gnu.org> <83aaogpcbu.fsf@gnu.org> <87vd737pxd.fsf@uwakimon.sk.tsukuba.ac.jp> Reply-To: Eli Zaretskii NNTP-Posting-Host: lo.gmane.org X-Trace: dough.gmane.org 1282421354 29617 80.91.229.12 (21 Aug 2010 20:09:14 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 21 Aug 2010 20:09:14 +0000 (UTC) Cc: u.s.reddy@cs.bham.ac.uk, emacs-devel@gnu.org To: "Stephen J. Turnbull" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Aug 21 22:09:10 2010 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.69) (envelope-from ) id 1OmuNJ-0000hl-3h for ged-emacs-devel@m.gmane.org; Sat, 21 Aug 2010 22:09:09 +0200 Original-Received: from localhost ([127.0.0.1]:40858 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Omu9D-0005RA-TJ for ged-emacs-devel@m.gmane.org; Sat, 21 Aug 2010 15:54:35 -0400 Original-Received: from [140.186.70.92] (port=40444 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Omu97-0005R0-8D for emacs-devel@gnu.org; Sat, 21 Aug 2010 15:54:30 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Omu95-0005l9-US for emacs-devel@gnu.org; Sat, 21 Aug 2010 15:54:29 -0400 Original-Received: from mtaout22.012.net.il ([80.179.55.172]:65248) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Omu95-0005kw-Ny for emacs-devel@gnu.org; Sat, 21 Aug 2010 15:54:27 -0400 Original-Received: from conversion-daemon.a-mtaout22.012.net.il by a-mtaout22.012.net.il (HyperSendmail v2007.08) id <0L7I00300PG1LT00@a-mtaout22.012.net.il> for emacs-devel@gnu.org; Sat, 21 Aug 2010 22:54:26 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([77.127.220.100]) by a-mtaout22.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0L7I00331PYN5H70@a-mtaout22.012.net.il>; Sat, 21 Aug 2010 22:54:25 +0300 (IDT) In-reply-to: <87vd737pxd.fsf@uwakimon.sk.tsukuba.ac.jp> X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) 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:128993 Archived-At: > From: "Stephen J. Turnbull" > Cc: Uday S Reddy , > emacs-devel@gnu.org > Date: Sun, 22 Aug 2010 03:59:10 +0900 > > > For the first kind, it is IMO not very good to have the changes > > uncommitted upstream for prolonged periods of time, > > What's your definition of "prolonged"? Never thought about quantifying that. It seems like a moot point anyway, since there's a request not to lump unrelated changes in the same commit. (What would you write as a commit message for such a commit, anyway?) So I normally commit a change as soon as it's ready and tested, and if that's in a bound branch, it goes upstream. In practice, this tends to happen every hour or two, when the changes are quick and simple (for the other kind I do it in a separate branch). I could use "ci --local", but that would cause my changes appear on a branch when I finally commit upstream, and require the -n0 switch to "bzr log", so I try to avoid that. > I'm thinking in terms of > simply committing all changes locally until the end of the work > session, then doing the merge to mirror and push to upstream in a > batch at the end of the session. That'd be against the "not lumping together unrelated changes" request. Maybe I interpret it too strictly, but it will take Stefan's or Chong's word to make me change this. > How frequently do you commit? Very frequently, see above. > How finely do you divide changesets? Each changeset deals with a separate feature or bug-fix. That is how I understand the rules. > I will often make 5 to 10 commits in a session when I'm working on > minor bugs. Same here, although it's more close to 5 than to 10. > I really would not like it if I had to wait even one minute for a > commit of a typo fix. Well, you cannot make a changeset of a typo fix with anything else, unless it's another typo. The problem is that one rarely finds many typos in one go, except by luck. So yes, I need to wait before the next commit. I do other things, like reading mail or work on some other problem in the meantime. > > > With bound branches, your branch is locked up until the commit > > > goes through. You can't do anything while you have uncommitted > > > changes in your source. > > > Why would you say that? That's not true. Nothing prevents me from > > editing while "bzr ci" churns away. The system is not locked, only > > (some) bzr operations will fail. But most of the development is > > not about bzr ops, its about using the editor, the compiler, and > > other development tools, none of which are locked up when "bzr ci" > > runs. > > No, but if you do a typo fix, commit, then find another typo, 50 > minutes (according to the recent report) is a very long time to > wait.... Well, 50 minutes _is_ long. It's more like 3 to 5 here, which is also long, but barely endurable. > I imagine it would also be a bad idea to continue to work on > any of the files currently being committed, as if the commit fails you > need to disentangle the changes by hand. Right, you need to refrain from saving. But if I have a long series of changes to the same files, it generally means they belong to some larger feature, so I should do it in a local branch anyway. > The recommended workflow (at least as Karl and I wrote it) assumed > that "one-commit changes" would be performed in a separate branch, > and merged into the mirror (bound branch) in batches. This would again fly in the face of the "don't lump together..." request, AFAIU.