From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?utf-8?Q?=C3=93scar_Fuentes?= Newsgroups: gmane.emacs.devel Subject: Re: reversion revulsion Date: Fri, 08 Jan 2010 14:27:46 +0100 Message-ID: <878wc8d8vh.fsf@telefonica.net> References: <200912081747.nB8HlwPR021836@godzilla.ics.uci.edu> <874oo1w9y1.fsf@telefonica.net> <87tyw1uss6.fsf@telefonica.net> <200912082203.nB8M3FLP023771@godzilla.ics.uci.edu> <87hbs1at4u.fsf@notengoamigos.org> <871vj3sxgy.fsf@telefonica.net> <87ws0vrd46.fsf@telefonica.net> <87hbqxa9ti.fsf@ambire.localdomain> <87k4vtd1uy.fsf@telefonica.net> <83ljg9as4g.fsf@gnu.org> <87wrzszz4y.fsf_-_@ambire.localdomain> <87d41kdeqp.fsf@telefonica.net> <834omwbwof.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: ger.gmane.org 1262957318 5170 80.91.229.12 (8 Jan 2010 13:28:38 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 8 Jan 2010 13:28:38 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jan 08 14:28:30 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.50) id 1NTEtC-0001wb-CJ for ged-emacs-devel@m.gmane.org; Fri, 08 Jan 2010 14:28:30 +0100 Original-Received: from localhost ([127.0.0.1]:58078 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NTEtC-0006Km-PT for ged-emacs-devel@m.gmane.org; Fri, 08 Jan 2010 08:28:30 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NTEt3-0006Hs-VM for emacs-devel@gnu.org; Fri, 08 Jan 2010 08:28:22 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NTEsy-00069a-AA for emacs-devel@gnu.org; Fri, 08 Jan 2010 08:28:20 -0500 Original-Received: from [199.232.76.173] (port=51390 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NTEsy-00069J-1w for emacs-devel@gnu.org; Fri, 08 Jan 2010 08:28:16 -0500 Original-Received: from lo.gmane.org ([80.91.229.12]:54343) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NTEsw-0008Rl-Vk for emacs-devel@gnu.org; Fri, 08 Jan 2010 08:28:15 -0500 Original-Received: from list by lo.gmane.org with local (Exim 4.50) id 1NTEsr-0001nc-Pu for emacs-devel@gnu.org; Fri, 08 Jan 2010 14:28:09 +0100 Original-Received: from 180.red-83-36-171.dynamicip.rima-tde.net ([83.36.171.180]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 08 Jan 2010 14:28:09 +0100 Original-Received: from ofv by 180.red-83-36-171.dynamicip.rima-tde.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 08 Jan 2010 14:28:09 +0100 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 69 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 180.red-83-36-171.dynamicip.rima-tde.net User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.90 (gnu/linux) Cancel-Lock: sha1:WceC4LFnpcXtV53wGEZjATZfkuE= 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:119688 Eli Zaretskii writes: >> > cd .../trunk # 0 >> > bzr update # 1 >> > bzr merge ../quickfixes # 2 >> > bzr commit # 3 >> > bzr revert --forget-merges # 4 >> > >> > IIUC step 3 publishes, as does step 4, defeating atomicity. >> >> Nope, you have steps 3 and 4 reversed. > > I usually do it slightly differently (following the wiki): > > cd ../trunk > bzr update > cd ../quickfixes > bzr merge > bzr commit You can save the `cd's with bzr update ../trunk bzr merge bzr commit > Where would I put "bzr revert --forget-merges" in my case? wouldn't > that be after the last "commit"? You are doing something different from what we are discussing. We are talking about not merging into upstream local revisions that adds nothing interesting to the history. You are talking about getting the latest changes from upstream and merging them into the quickfixes branch. It is the opposite direction. You absolutely don't want to use --forget-merges while merging upstream's changes into your branch, because bzr would forget what revisions were already merged and try to merge them again next time. This brings another detail: if --forget-merges is used when you send the changes from quickfixes to upstream via trunk, you need to reset the quickfixes branch afterwards, because the next time you merge from quickfixes it will include the previous revisions. >> `bzr revert' does not modify committed history. > > As far as I understood from Juanma and Stephen, it actually does. > Unless by ``committed history'' you mean something that excludes the > history of merging revisions between branch and trunk. What am I > missing? I'll rephrase: `bzr revert' does not modify history that already was incorporated into the branch you are going to commit to. `revert' operates on local uncommitted stuff. >> Maybe you are >> confusing it with `bzr uncommit', which NEVER should be used in trunk/? > > Not even if I need to revert the last commit? No, because there is a race condition: someone can update from upstream's trunk just before you execute the uncommit. To be sincere, I don't know if bazaar is smart enough to realize that a revision was removed from the remote branch and DTRT when people execute `update'. Until this point is cleared, you'll better avoid `uncommit' on trunk/ because if bzr does not the right thing, you can cause lots of confusion. -- Óscar