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: git apologia [was: git pull fails with merge conflicts. ...] Date: Sat, 15 Nov 2014 18:51:51 +0200 Message-ID: <834mu0flug.fsf@gnu.org> References: <20141114183737.GB3168@acm.acm> <5466517B.50705@porkrind.org> <20141114215404.GD3168@acm.acm> <838ujchods.fsf@gnu.org> <8761egx1k2.fsf@uwakimon.sk.tsukuba.ac.jp> <83sihkg2ds.fsf@gnu.org> <87vbmgv3b9.fsf@uwakimon.sk.tsukuba.ac.jp> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1416070362 18105 80.91.229.3 (15 Nov 2014 16:52:42 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 15 Nov 2014 16:52:42 +0000 (UTC) Cc: emacs-devel@gnu.org To: "Stephen J. Turnbull" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Nov 15 17:52:35 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XpgaQ-0003Vg-7M for ged-emacs-devel@m.gmane.org; Sat, 15 Nov 2014 17:52:34 +0100 Original-Received: from localhost ([::1]:41102 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XpgaP-0005AX-Uh for ged-emacs-devel@m.gmane.org; Sat, 15 Nov 2014 11:52:33 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40637) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xpga8-00059d-Iq for emacs-devel@gnu.org; Sat, 15 Nov 2014 11:52:21 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Xpga0-0002QG-6n for emacs-devel@gnu.org; Sat, 15 Nov 2014 11:52:16 -0500 Original-Received: from mtaout23.012.net.il ([80.179.55.175]:63163) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XpgZz-0002Q5-VL for emacs-devel@gnu.org; Sat, 15 Nov 2014 11:52:08 -0500 Original-Received: from conversion-daemon.a-mtaout23.012.net.il by a-mtaout23.012.net.il (HyperSendmail v2007.08) id <0NF300H00AMG4E00@a-mtaout23.012.net.il> for emacs-devel@gnu.org; Sat, 15 Nov 2014 18:52:06 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout23.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NF300G09AUTZP90@a-mtaout23.012.net.il>; Sat, 15 Nov 2014 18:52:06 +0200 (IST) In-reply-to: <87vbmgv3b9.fsf@uwakimon.sk.tsukuba.ac.jp> X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 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:177204 Archived-At: > From: "Stephen J. Turnbull" > Cc: emacs-devel@gnu.org > Date: Sun, 16 Nov 2014 01:25:30 +0900 > > But most important, as an Emacs developer, you understand how conses > work, and how to manipulate a Lisp list using car and cdr and push. > So you don't need to study "git semantics" *at all*, because you > already have a wealth of experience with them, once you grasp the > (very accurate) analogy. I understand that. My point is that, while I do want to reason in these terms about Emacs, which I help developing, I prefer not to have to reason about Git in any similar way or to a similar depth. I just need to get the job done quickly, efficiently, and without errors. Again, using Git is tangential to my interest here, which is develop Emacs. I don't want to know about its internals more than I know about GCC, for example. > " has different semantics" is not what I understand > when someone says "I don't understand 's semantics." Well, I'll take my "English is not my first language" refuge here. > But OK, yes, that's an issue users would (justifiably) rather not deal > with. If that's all you meant by "don't understand git semantics", I did. > you have my sympathy, but I think the majority of Emacs developers are > going to be very pleased by the efficiency and power of git, and even > you may find after a few months that vc and/or magit have improved to > the point where you don't have to deal with git CLI at all any more. I wasn't arguing for dropping Git, okay? You asked me what was confusing, and I explained in response what makes the learning curve steeper than it could have been. Once the decision was made to switch to Git, I don't think anyone here heard me complaining (unlike what we heard about bzr). > > The other result is that to see the diffs of the last commit, it is > > much easier to use "git show" than the more obvious "git diff". > > "git diff " has historical, and useful, semantics. IMHO, > "git show " is a surprisingly elegant UI for what it does, > considering that this is git. :-) > > Sure, they *could* have implemented "git diff -c" as hg and bzr do, > but I like "git show" better. YMMV. MMDNV. But the point is that I need either forget about "git diff" and switch to "git show" entirely, or use the former as replacement for the "-c COMMIT" use case, and the latter for the others. IOW, one more thing to re-learn, that won't serve me with any other VCS.