From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16129 invoked by alias); 14 Oct 2011 10:23:21 -0000 Received: (qmail 16117 invoked by uid 22791); 14 Oct 2011 10:23:20 -0000 X-SWARE-Spam-Status: No, hits=-2.2 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,TW_BZ X-Spam-Check-By: sourceware.org Received: from sibelius.xs4all.nl (HELO glazunov.sibelius.xs4all.nl) (83.163.83.176) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 14 Oct 2011 10:23:06 +0000 Received: from glazunov.sibelius.xs4all.nl (kettenis@localhost [127.0.0.1]) by glazunov.sibelius.xs4all.nl (8.14.5/8.14.3) with ESMTP id p9EAMtGa016903; Fri, 14 Oct 2011 12:22:55 +0200 (CEST) Received: (from kettenis@localhost) by glazunov.sibelius.xs4all.nl (8.14.5/8.14.3/Submit) id p9EAMrUN030848; Fri, 14 Oct 2011 12:22:53 +0200 (CEST) Date: Fri, 14 Oct 2011 10:23:00 -0000 Message-Id: <201110141022.p9EAMrUN030848@glazunov.sibelius.xs4all.nl> From: Mark Kettenis To: eliz@gnu.org CC: pmuldoon@redhat.com, gdb@sourceware.org In-reply-to: <83hb3ckn2s.fsf@gnu.org> (message from Eli Zaretskii on Fri, 14 Oct 2011 10:13:31 +0200) Subject: Re: GIT and CVS References: <83r52g1rly.fsf@gnu.org> <83hb3ckn2s.fsf@gnu.org> Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2011-10/txt/msg00113.txt.bz2 > Date: Fri, 14 Oct 2011 10:13:31 +0200 > From: Eli Zaretskii > > > > If we are going to switch to a dVCS, git is not the only choice. I > > > like bzr better; bzr is a GNU project, unlike git. > > > > Given your question above, does bzr fulfill the roles any better than > > GIT? > > Yes, definitely. For starters, it works on Posix and Windows > platforms alike. Emacs uses bzr as its VCS for the last 2 years or > so. I'm a git hater. And the reason I hate GIT is because of the development model it enforces. It doesn't match the way I work. My workflow looks more or less as follows: $ cvs update (make some changes) ... (come back a couple of days later) $ cvs update (merge conflicts, make some more changes) ... $ cvs update (test changes, write changelog, send diff for review) ... $ cvs update (test changes again, fixup changelog) $ cvs commit With lots of "cvs diff" invocations in between to check my changes and remind myself what I'm working on. I've used SVN, Mercurial and all of those VCSes have commands that are close enough to CVS that they've allowed me to keep the same workflow and didn't require me to look at their documentation for every command I run. With GIT there's several additional commands I have to run, and I have to commit half-finished work, which I can't bring myself to do. (I've tried git stash, but it didn't seem to support my development style, at least "unstashing" didn't "just work" when I did a git fetch in between). How does bzr compare here? Is it close enough to CVS that there is a 1:1 mapping of commands with perhaps an additional command to "push" changes upstream?