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: Confusing "bzr log" as result of merges Date: Sat, 21 May 2011 10:33:09 +0300 Message-ID: <83ipt4fqyy.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: lo.gmane.org X-Trace: dough.gmane.org 1305963196 5269 80.91.229.12 (21 May 2011 07:33:16 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 21 May 2011 07:33:16 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat May 21 09:33:13 2011 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QNggS-0000sP-KO for ged-emacs-devel@m.gmane.org; Sat, 21 May 2011 09:33:12 +0200 Original-Received: from localhost ([::1]:58756 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QNggR-0002On-RS for ged-emacs-devel@m.gmane.org; Sat, 21 May 2011 03:33:11 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:53025) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QNggP-0002Og-Vp for emacs-devel@gnu.org; Sat, 21 May 2011 03:33:10 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QNggO-0002uI-SB for emacs-devel@gnu.org; Sat, 21 May 2011 03:33:09 -0400 Original-Received: from mtaout23.012.net.il ([80.179.55.175]:61017) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QNggO-0002uA-LH for emacs-devel@gnu.org; Sat, 21 May 2011 03:33:08 -0400 Original-Received: from conversion-daemon.a-mtaout23.012.net.il by a-mtaout23.012.net.il (HyperSendmail v2007.08) id <0LLJ00K00BL72R00@a-mtaout23.012.net.il> for emacs-devel@gnu.org; Sat, 21 May 2011 10:33:06 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([77.124.254.13]) by a-mtaout23.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0LLJ00JF0BN5Y320@a-mtaout23.012.net.il> for emacs-devel@gnu.org; Sat, 21 May 2011 10:33:06 +0300 (IDT) X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) X-Received-From: 80.179.55.175 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:139568 Archived-At: Sometimes, you want to know when was a certain file last modified. This is when "bzr log" is useful, if invoked with the name of that file. However, it looks like the way we merge other branches, and in particular emacs-23, makes this harder than it needs to be. An example of this difficulty is below: With the current trunk, type this command: bzr log -l1 --line --include-merges src/xdisp.c You will see this as output: 104201: Glenn Morris 2011-05-12 [merge] Merge from emacs-23; up to r100577. However, neither "bzr status" nor "bzr diff" will show any changes for xdisp.c in that revision. The reason, it seems, is this: bzr log -l2 --line --include-merges src/xdisp.c => 104201: Glenn Morris 2011-05-12 [merge] Merge from emacs-23; up to r100577. 99634.2.937: Eli Zaretskii 2011-05-09 Backport revisions 103939.1.41..103939.1.44 (inclusive) from trunk (bug#8623) and revision 99634.2.937 indeed made a few changes to xdisp.c. But that version was merged to the trunk much earlier, in revision 104021, and "bzr annotate" still shows that the changes attributed to revision 99634.2.937 were made in 103939.1.41, not in 104201 nor in 99634.2.937: 103939.1.42 eggert@cs.ucla.edu 20110425 | it->dpend = v->contents + v->header.size; I think this happens because bzr is smart enough to know that the revision which changed this line is already on the trunk, and so it doesn't record any changes for xdisp.c in the merge-commit or 104201. Bazaar is doing TRT, but the net result for the user is confusion and extra time spent when trying to figure out who made this specific change and why. What can we do to avoid this confusion as result of merges? And why was 99634.2.937 merged to the trunk, even though the log message clearly says it's a backport? If we avoid merging such backported revisions, will this problem go away?