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: On the popularity of git [Was: Git question: when using branches, how does git treat working files when changing branches?] Date: Sat, 31 Oct 2015 10:24:44 +0200 Message-ID: <83611nzbqr.fsf@gnu.org> References: <20151028192017.GC2538@acm.fritz.box> <87k2q6wy8p.fsf@linaro.org> <20151028223252.GD2538@acm.fritz.box> <87vb9qd2h4.fsf@wanadoo.es> <20151028235340.GE2538@acm.fritz.box> <87ziz213wx.fsf@fencepost.gnu.org> <20151029123554.GB2510@acm.fritz.box> <87h9l995ec.fsf@fencepost.gnu.org> <20151029170237.GF2510@acm.fritz.box> <22068.12941.199944.979963@turnbull.sk.tsukuba.ac.jp> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1446279901 3168 80.91.229.3 (31 Oct 2015 08:25:01 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 31 Oct 2015 08:25:01 +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 Oct 31 09:24:52 2015 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 1ZsRSy-0005SJ-IG for ged-emacs-devel@m.gmane.org; Sat, 31 Oct 2015 09:24:48 +0100 Original-Received: from localhost ([::1]:54670 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZsRSx-00073x-SY for ged-emacs-devel@m.gmane.org; Sat, 31 Oct 2015 04:24:47 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46730) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZsRSu-00073q-1s for emacs-devel@gnu.org; Sat, 31 Oct 2015 04:24:45 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZsRSp-0000Ya-IZ for emacs-devel@gnu.org; Sat, 31 Oct 2015 04:24:44 -0400 Original-Received: from mtaout20.012.net.il ([80.179.55.166]:35915) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZsRSp-0000YS-AX for emacs-devel@gnu.org; Sat, 31 Oct 2015 04:24:39 -0400 Original-Received: from conversion-daemon.a-mtaout20.012.net.il by a-mtaout20.012.net.il (HyperSendmail v2007.08) id <0NX200A00SFNQD00@a-mtaout20.012.net.il> for emacs-devel@gnu.org; Sat, 31 Oct 2015 10:24:38 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([84.94.185.246]) by a-mtaout20.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NX200AT5SP1KE60@a-mtaout20.012.net.il>; Sat, 31 Oct 2015 10:24:38 +0200 (IST) In-reply-to: <22068.12941.199944.979963@turnbull.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.166 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:193005 Archived-At: > Date: Sat, 31 Oct 2015 12:16:29 +0900 > From: "Stephen J. Turnbull" > Cc: Alan Mackenzie , David Kastrup , joakim@verona.se, > Emacs developers > > [2] It occurs to me that one of the things I hated about both bzr and > hg was that a bare "$VCS commit" commits everything. That is *almost > never* TRT for my workflow. But I suspect that Alan loves that > feature, since he has a religious objection to commiting a workspace > that hasn't been polished to an optically perfect surface. It is a known psychological fact that after using some tool for a long time, people begin liking or even loving it, no matter how horrible that tool is. In fact, people become fond of even the most hideous misfeatures of that tool. Otherwise, how to explain that people loved DCL? The above is an example. The truth is that "$VCS commit" committing all the changes _is_ TRT. Why? because all the other VCSes before and after Git do that, and because that's what a mere human would expect. (I've made me an alias to do just that.) More generally, Git's main problem is that it breaks almost every human habit gained with the other VCSes: instead of an easily remembered numerical version IDs you have those inhuman hashes and the HEAD^^^^ and {m,n} thingies, instead of being able to say "commit" and commit the entire changeset you need "git add" first, etc. etc. _That_ is the single most important problem with Git that begets all the other problems in usability and user-friendliness: it doesn't give a damn about established VCS practices and mnemonics, and breaks them all one after another. It does that consciously and on purpose. And after all that, it expects me to like it. Ha!