From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.devel Subject: Re: RCS, again: another removed functionality: undo last-checkin Date: Thu, 1 Oct 2015 05:47:54 +0300 Message-ID: <560C9EDA.3040207@yandex.ru> References: <87oagx6tzz.fsf@mat.ucm.es> <55FF4026.2050004@yandex.ru> <83si68nu4i.fsf@gnu.org> <87eghsfd3m.fsf@fencepost.gnu.org> <83k2rknr2c.fsf@gnu.org> <87mvwellmg.fsf@uwakimon.sk.tsukuba.ac.jp> <56023A6C.3020302@yandex.ru> <5602BE3E.1050009@yandex.ru> <5602C4DE.8020105@yandex.ru> <560B4899.2070708@yandex.ru> <83y4fobegc.fsf@gnu.org> <560BC73C.4040403@yandex.ru> <83d1x0atb2.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1443699746 3229 80.91.229.3 (1 Oct 2015 11:42:26 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 1 Oct 2015 11:42:26 +0000 (UTC) Cc: stephen@xemacs.org, dak@gnu.org, emacs-devel@gnu.org, monnier@iro.umontreal.ca, rms@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Oct 01 13:42:21 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 1ZhcFe-00080b-St for ged-emacs-devel@m.gmane.org; Thu, 01 Oct 2015 13:42:19 +0200 Original-Received: from localhost ([::1]:48600 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZhcFe-0004fm-BI for ged-emacs-devel@m.gmane.org; Thu, 01 Oct 2015 07:42:18 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:42484) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZhTud-0005hf-F3 for emacs-devel@gnu.org; Wed, 30 Sep 2015 22:48:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZhTuY-0002bc-FE for emacs-devel@gnu.org; Wed, 30 Sep 2015 22:48:03 -0400 Original-Received: from mail-lb0-x236.google.com ([2a00:1450:4010:c04::236]:32842) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZhTuY-0002aj-7O; Wed, 30 Sep 2015 22:47:58 -0400 Original-Received: by lbos8 with SMTP id s8so1353889lbo.0; Wed, 30 Sep 2015 19:47:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-type:content-transfer-encoding; bh=t/JE/l8oaaj4sxvtGsQxghqNF8Abnb/oSOehW7IRBWw=; b=jecHUtf9RigvC0y3lOzRGKtqwi5gL+H+RGvN+2vz33lxfQwnNnGximqoZJqafA2HWH gqW+2ipzkSJsa3KNxya+d5KuSeGToiYgVMOkpY+3NKCUT/1mVWgVj+27DuQmtPfbMbzU 7zclKMGq1fmiLufSs4HHqf0wBSwi88A8EuGS2Be0xh+oNjb6QMg4LRkd7FVDCT7Kewcf Gcye/XkMgwgp09VKl+GU6B+pRBZ+m5nOWgYmJsIx5sX9mybCPg4ILx5QG2x9TgqB7aER z29/u3YDwIAUbMaB6MYDz2DCI16L17ICohHY70Xt/xzztWUbOQeiviryJrlMEZ6oEK9U FpyQ== X-Received: by 10.25.211.201 with SMTP id k192mr1381058lfg.32.1443667677413; Wed, 30 Sep 2015 19:47:57 -0700 (PDT) Original-Received: from [192.168.1.190] ([178.252.127.222]) by smtp.googlemail.com with ESMTPSA id p133sm400236lfp.16.2015.09.30.19.47.55 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 30 Sep 2015 19:47:56 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:41.0) Gecko/20100101 Thunderbird/41.0 In-Reply-To: <83d1x0atb2.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a00:1450:4010:c04::236 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:190538 Archived-At: On 09/30/2015 05:13 PM, Eli Zaretskii wrote: > Well, with RCS as the back-end, "register" actually commits. That's... odd. How does it do that before the user entered the commit message? > I see > that the other back-ends only use the "add" sub-command, but maybe we > should change that, so registering ends up with the files committed. Maybe we should just call that action "committing", and assume that registering, if needed, is a part of it. Doing it another way would sound pretty weird to me. > I don't think there are such back-ends. The only issue with such a > change that I see is that people might want adding files > incrementally, then committing them all at once. If this is something > users might do a lot, perhaps we should have a defcustom for such > behavior. Git users are accustomed to 'git add' moving changes to the staging area, which is pretty neat, but one needs to 'git add' both unregistered files *and* files that simply have new changes. That's mismatch #1. Mismatch #2 is that no other VCS (AFAIK) has a staging area. So it's much simpler to avoid that intermediate step, since it can't be implemented in a generic fashion. > I think it does: if you commit a change in an outdated file, your > commit will either be rejected or, worse, will wipe out later commits. Maybe you have a point there. Keeping that piece of logic in vc-commit too doesn't sound too awful. > A maintainer can "just do it", of course, but he/she cannot prevent > others from reacting to a commit after the fact. So I don't see any > way of avoiding discussions in general. I mean "just do XXX" as a response to that kind of discussion. Either we have a new workflow to do the same thing, or we say that, alas, the users need to use the console for that operation now. And life goes on. > If my recollections are wrong, I apologize. I did re-read them when > Uwe complained about the change in vc-checkin's behavior. Even if Eric had some emotional reasons for that change (I don't recall), we did bring up more practical benefits for it in Uwe's thread. > I agree, but the features in question do make sense, I think, because > the back-ends they were written for still exist and are supported and > used. That would imply that e.g. every Git or Hg feature makes sense in VC. But we only support those we can abstract over in a reasonable fashion.