From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#38044: 27.0.50; There should be an easier way to look at a specific vc commit Date: Thu, 21 Nov 2019 20:33:41 +0200 Message-ID: <83a78pxenu.fsf@gnu.org> References: <87ftj5at1q.fsf@gnus.org> <87r22phsoj.fsf@gmx.net> <87bltslnpo.fsf@mail.linkov.net> <87d0dvmqu8.fsf@mail.linkov.net> <590e595e-8220-1c7e-bd4a-b2eb0968e289@yandex.ru> <87r226xl8m.fsf@mail.linkov.net> <24c56bca-8d7d-3a20-aeef-5d11f8a075e6@yandex.ru> <87pnhquo4k.fsf@mail.linkov.net> <6087186e-a444-0aac-e87d-596d2e36f0ce@yandex.ru> <877e3wub09.fsf@mail.linkov.net> <5ce7d4f0-3884-fd27-09dc-c38f01a19958@yandex.ru> <83zhgr26c3.fsf@gnu.org> <87blt7qxhz.fsf@mail.linkov.net> <837e3v1aae.fsf@gnu.org> <87y2warzv3.fsf@mail.linkov.net> <83r221xoll.fsf@gnu.org> Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="256531"; mail-complaints-to="usenet@blaine.gmane.org" Cc: larsi@gnus.org, stephen.berman@gmx.net, 38044@debbugs.gnu.org, juri@linkov.net To: Dmitry Gutov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Nov 21 19:34:12 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1iXrHP-0014Ym-F4 for geb-bug-gnu-emacs@m.gmane.org; Thu, 21 Nov 2019 19:34:11 +0100 Original-Received: from localhost ([::1]:45004 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iXrHO-0006NO-BM for geb-bug-gnu-emacs@m.gmane.org; Thu, 21 Nov 2019 13:34:10 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:56025) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iXrHH-0006N3-EA for bug-gnu-emacs@gnu.org; Thu, 21 Nov 2019 13:34:04 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iXrHG-0003lb-Cn for bug-gnu-emacs@gnu.org; Thu, 21 Nov 2019 13:34:03 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:44490) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iXrHG-0003lW-9a for bug-gnu-emacs@gnu.org; Thu, 21 Nov 2019 13:34:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iXrHG-0007Ko-4E for bug-gnu-emacs@gnu.org; Thu, 21 Nov 2019 13:34:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 21 Nov 2019 18:34:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38044 X-GNU-PR-Package: emacs Original-Received: via spool by 38044-submit@debbugs.gnu.org id=B38044.157436122128163 (code B ref 38044); Thu, 21 Nov 2019 18:34:02 +0000 Original-Received: (at 38044) by debbugs.gnu.org; 21 Nov 2019 18:33:41 +0000 Original-Received: from localhost ([127.0.0.1]:53311 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iXrGt-0007KA-0Y for submit@debbugs.gnu.org; Thu, 21 Nov 2019 13:33:39 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:46777) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iXrGq-0007Jw-LU for 38044@debbugs.gnu.org; Thu, 21 Nov 2019 13:33:37 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:36825) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1iXrGk-0003LK-93; Thu, 21 Nov 2019 13:33:30 -0500 Original-Received: from [176.228.60.248] (port=2790 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1iXrGj-0008T3-LN; Thu, 21 Nov 2019 13:33:30 -0500 In-reply-to: (message from Dmitry Gutov on Thu, 21 Nov 2019 17:50:10 +0200) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:172150 Archived-At: > Cc: larsi@gnus.org, stephen.berman@gmx.net, 38044@debbugs.gnu.org > From: Dmitry Gutov > Date: Thu, 21 Nov 2019 17:50:10 +0200 > > Okay, I see what you mean now: you're basically suggesting to tackle the > new behavior (the one everybody wants apparently) on top the 'diff' > backend action. Which can kind of work, but I don't see why we would > make that choice. I think it's the logical place for such a command, because, as I said before, in many VCSes a description of a revision _is_ the diffs of that revision against its parent. That is how we always presented a revision before Git. And "git show" also presents diffs, it just prepends some meta-data to it. So it's actually a minor variation of "diff". > Adding a new backend command is relatively cheap, and we won't force the > backend implementation to try to reconcile incompatible arguments (e.g. > REV1 that is not a parent of REV2 and SHOW-METADATA=t). I agree that adding a command is cheap. But it makes the system more complex and harder to remember and make sense of. So IMO we should only add a new class of commands if the command is radically different from others. > I also think the current patch proposed by Juri is cleaner than the one > that is required to implement your idea. I think the difference is very small, because the function Juri wrote can simply be called from vc-diff given a special value of prefix arg. > Finally, "C-u C-u C-x v =" doesn't look semantic enough for me (revision > != diff in my mind, at least not entirely). I think it would be nicer to > have a new command, but opinions welcome on this. I think that's because you keep the command issued by the backend in mind all the time, and that command is not "diff" for Git and Mercurial. But the output is almost exactly that of "diff", so IMO the mental model is simple and easy to remember.