all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Robert Anderson <rwa@alumni.princeton.edu>
Cc: emacs-devel@gnu.org
Subject: Re: gratuitous changes
Date: 03 Feb 2003 08:20:34 -0800	[thread overview]
Message-ID: <1044289234.6248.42.camel@lan1> (raw)
In-Reply-To: <200302031509.h13F9oc11594@rum.cs.yale.edu>

On Mon, 2003-02-03 at 07:09, Stefan Monnier wrote:
> > > 	Stefan "about 200 locally modified files"
> > PS.  You need a branch about 190 files ago. :)
> 
> A sandbox is in many ways a special extra-leightweight branch,
> and I do use it that way (I have a couple other sandboxes).

Sure.  But editing 200 files is a bit of a heavy lifting task for an
extra-lightweight branch without the features to control those kinds of
extensive changes.

> A real branch would have the advantage of making the code available to
> other people,

That's one advantage, but probably not the central one from my view. 
The central advantage is that I have serious doubts that your 200
changed files comprise one well-defined changeset that fixes bug X or
adds feature Y.  Even if it does implement some kind of large feature or
bugfix, I think if upon commit, a regression or crashing bug was
discovered, you would have quite a large number of possibilities of
where to look for the bug, and, the real problems with large-scale
development in a sandbox - no way of recreating the intermediate steps
you used to get to the code state that was committed.

If instead you had a branch, you could approach your tasks one at a time
without fear of disturbing other developers when it is time to check in
a tentative or intermediate logical changeset.

Why do logical changesets matter?

1)  Because they can be rolled back when bugs appear to isolate the
possible causes, creating ostensibly self-consistent code states at each
step, as opposed to rolling back a file and just hoping the changes in
that file don't depend on other changes in other files.

2) Because it is often the case that branch developers will want to
incorporate some changes from mainline or vice-versa in order to do
their own work more effectively, and doing so with logical changesets
has an order of magnitude less complexity than trying to do so an a
per-file basis.  Not to mention that CVS's complete lack of history
sensitivity for merging makes this a dangerous and confusing task from
the get-go - probably best avoided altogether, which is a shame.

 but requires more work when merging changes from the
> trunk, when committing changes to the trunk and it would be more
> difficult to get a meaningful summary of "what's changed w.r.t. the
> trunk" which I normally have all the time in my *cvs* buffer.

Right.  Because CVS branch support is abysmal, for no good reason other
than historical baggage.

> I guess there is something for CVS, Subversion, MetaCVS, Arch, OpenCM, ...
> to learn here, but I'm not sure what,

Seamless support for branches is central.  Arch, for one, nails this. 
(But neither is it demonstrably ready for prime-time deployment).

Stepping off soap box,
Bob

  reply	other threads:[~2003-02-03 16:20 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-01-31 21:48 gratuitous changes Stefan Monnier
2003-01-31 22:16 ` Andreas Schwab
2003-01-31 22:51   ` John Wiegley
2003-01-31 23:01 ` Juanma Barranquero
2003-02-01  0:00   ` Stefan Monnier
2003-02-01  6:51     ` Robert Anderson
2003-02-03 15:09       ` Stefan Monnier
2003-02-03 16:20         ` Robert Anderson [this message]
2003-02-01  9:54     ` Juanma Barranquero
2003-02-01  2:11 ` Miles Bader
2003-02-01 18:44   ` Bill Wohler
2003-02-01 22:11 ` Richard Stallman
2003-02-01 23:28   ` Martin Stjernholm
2003-02-02  5:52     ` Eli Zaretskii
2003-02-02  6:14       ` Miles Bader
2003-02-06 16:34         ` Martin Stjernholm
2003-02-06 17:22           ` Miles Bader
2003-02-10  0:29             ` Martin Stjernholm
2003-02-03 14:57     ` Stefan Monnier
2003-02-02  5:56 ` Eli Zaretskii
2003-02-02 12:56   ` Juanma Barranquero
2003-02-02 13:59   ` Kim F. Storm
2003-02-03 13:01     ` Richard Stallman
2003-02-03 14:11       ` Juanma Barranquero
2003-02-03 14:54         ` Stefan Monnier
2003-02-03 15:01           ` Juanma Barranquero
2003-02-04 14:59       ` Juanma Barranquero
2003-02-04 16:09         ` Robert Anderson
2003-02-04 16:44           ` Juanma Barranquero
2003-02-04 17:14             ` Robert Anderson
2003-02-04 17:22               ` Juanma Barranquero
2003-02-04 19:46         ` Eli Zaretskii
2003-02-04 20:16           ` Juanma Barranquero
2003-02-04 20:22             ` Stefan Monnier
2003-02-04 20:44               ` Nick Roberts
2003-02-04 22:59                 ` Edward O'Connor
2003-02-04 23:19                   ` Juanma Barranquero
2003-02-05  0:32                   ` Kim F. Storm
2003-02-05  0:39                     ` Kim F. Storm
2003-02-05  0:49                       ` Kenichi Handa
2003-02-05  4:24                     ` Luc Teirlinck
2003-02-05  4:51                       ` Miles Bader
2003-02-06  2:42                   ` Richard Stallman
2003-02-06  4:09                     ` Luc Teirlinck
2003-02-07  9:18                       ` Richard Stallman
2003-02-04 23:18                 ` Juanma Barranquero
2003-02-05  0:42                   ` Stefan Monnier
2003-02-05  6:03                 ` Eli Zaretskii
2003-02-06  2:42                 ` Richard Stallman
2003-02-06  2:54                   ` Luc Teirlinck
2003-02-04 23:14               ` Juanma Barranquero
2003-02-05  6:01             ` Eli Zaretskii
2003-02-05  8:18               ` Juanma Barranquero
2003-02-05 15:30                 ` Eli Zaretskii
2003-02-14 22:56                   ` Thien-Thi Nguyen
2003-02-05  0:14         ` Richard Stallman
2003-02-07 14:02 ` Francesco Potorti`
2003-02-10  1:47   ` Miles Bader
2003-02-10 10:09     ` Francesco Potorti`

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1044289234.6248.42.camel@lan1 \
    --to=rwa@alumni.princeton.edu \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.