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: VC mode and git Date: Thu, 26 Mar 2015 18:46:01 +0200 Message-ID: <83619nogfq.fsf@gnu.org> References: <86egoeusg2.fsf@example.com> <83pp7yp5po.fsf@gnu.org> <5511BB2A.2070909@dancol.org> <83619potuw.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1427388426 18725 80.91.229.3 (26 Mar 2015 16:47:06 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 26 Mar 2015 16:47:06 +0000 (UTC) Cc: sva-news@mygooglest.com, dancol@dancol.org, emacs-devel@gnu.org To: rms@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Mar 26 17:46:56 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 1YbAvZ-0007rN-OL for ged-emacs-devel@m.gmane.org; Thu, 26 Mar 2015 17:46:41 +0100 Original-Received: from localhost ([::1]:45528 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YbAvZ-00068M-15 for ged-emacs-devel@m.gmane.org; Thu, 26 Mar 2015 12:46:41 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:47862) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YbAvQ-00067W-MT for emacs-devel@gnu.org; Thu, 26 Mar 2015 12:46:38 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YbAvI-0005Bo-Un for emacs-devel@gnu.org; Thu, 26 Mar 2015 12:46:32 -0400 Original-Received: from mtaout27.012.net.il ([80.179.55.183]:46195) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YbAvI-0005BR-Mk; Thu, 26 Mar 2015 12:46:24 -0400 Original-Received: from conversion-daemon.mtaout27.012.net.il by mtaout27.012.net.il (HyperSendmail v2007.08) id <0NLT00O00V693000@mtaout27.012.net.il>; Thu, 26 Mar 2015 18:40:52 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by mtaout27.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NLT00MD8VO4ND30@mtaout27.012.net.il>; Thu, 26 Mar 2015 18:40:52 +0200 (IST) In-reply-to: X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 80.179.55.183 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:184335 Archived-At: > Date: Thu, 26 Mar 2015 06:57:07 -0400 > From: Richard Stallman > CC: dancol@dancol.org, sva-news@mygooglest.com, emacs-devel@gnu.org > > > > VC check-in should store into the central repository. > > > This must be optional, because there are widely used workflows where > > pushing every commit is not what the user wants. > > We should have all the options anyone wants. > I'm talking about the default behavior for C-x v v. Why should we care too much about the defaults? We both know how to customize Emacs, right? Defaults should cater to what the majority of users want, and they nowadays don't want to push automatically every commit. > > The notion of "commit" from RCS/CVS/SVN > > Also Bzr. When I was editing Emacs sources using Bzr, C-x v v > sent all my changes to the repository on Savannah. Only because the branch was bound. In an un-bound branch, bzr doesn't automatically push. Git lacks bound branches, so you cannot easily have the same functionality. > doesn't scale well to Git. > > Could you explain what the obstacle is? I don't see it. Quite simply, the separation between a commit and a push in Git is so radical that you cannot reliably do them both in one go, at least IME. E.g., what happens if the commit succeeds, but the push fails? From your POV of a "C-x v v" user, you are in a middle of something you are used to think of as an atomic operation. Where do you go to from there? > I have made a local Git repository cloned from the one at Savannah. > Supposedly 'git push' would send the changes back to Savannah. What > is the conceptual difficulty in having C-x v v work with Git just as > it did with Bzr -- commit and push? Bazaar allowed a workflow that Git doesn't, that's why you could maintain the illusion of a single operation in a bound branch.