9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Lucio De Re <lucio@proxima.alt.za>
To: 9fans@cse.psu.edu
Subject: Source version control (Was: [9fans] lucio-)
Date: Thu, 10 Jan 2002 14:07:47 +0200	[thread overview]
Message-ID: <20020110140747.V12098@cackle.proxima.alt.za> (raw)
In-Reply-To: <a1jqcp$mhs$1@spacebar.ucc.usyd.edu.au>; from Bruce Janson on Thu, Jan 10, 2002 at 10:37:55AM +0000

On Thu, Jan 10, 2002 at 10:37:55AM +0000, Bruce Janson wrote:
>
> dump wins out over the SCCS/RCS/CVS per-application approaches by
> including more of the environment: e.g. compiler, system includes.
> (In practice, has this been a significant win at the Labs?)
>
They address two different problem spaces, with solutions appropriate
to each.  That's my issue all along: is there a generic approach
that will satisfy a majority of version control needs, or do there
have to be mutually exclusive solutions for a wide range of project
types?

> Two of the limitations of dump are its coarse granularity and its
> arbitrary timing.  To eliminate these one could extend dump by
> allowing anybody to force (and annotate) a dump snapshot.

I hesitate to call the timing arbitrary or, for that matter, coarse,
because it reminds me of arguments about the real time nature of
computer response: throw enough power at it and you can approximate
the ideal as closely as you like.  Which in itself raises some
interesting considerations.

But the automatic nature has both benefits and disadvantages: on
the one hand it guarantees that history is retained and on the
other it allows the user to abrogate all responsibility for doing
so.

The real downside is that annotation, which, as mentioned here in
connection with the changelog, is extremely useful, becomes an even
greater burden for programmers, who are already notorious for
disliking the generation of documentation.

Naturally, the picture painted above is simplistic, but it covers
the most pertinent issues of source control: the retention of as
much information as possible.  In this category we can also include
the labelling of releases and, without the doubt, details of the
broader environment in which the change occurred.

A last note about the environment, while I think about it: /n/dump
provides a pretty good boundary, but certainly too wide to be
practical for a distributed programming project (think Linux).  In
CVS, the boundary may well be too tight (yesterday's problem with
CVS and APE is a case in point).  At the very minimum, there may
be a need to provide a boundary that is more relaxed than the CVS
"working directory", alternatively software developers may have to
be able to include in the concept of a "workspace" any modules
outside of the working directory that have been altered during
development and at the very least annotate the history accordingly.
The option to provide local copies of the environment with each
and every working directory is just too impractical, if not downright
insane (yet, ghostscript, ssh and others all include a copy of zlib
sources in the source distribution archives).

++L


  reply	other threads:[~2002-01-10 12:07 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-01-09  5:08 [9fans] lucio- Russ Cox
2002-01-09  5:32 ` Lucio De Re
2002-01-09  6:01   ` Lucio De Re
2002-01-10 10:37   ` Bruce Janson
2002-01-10 12:07     ` Lucio De Re [this message]
2002-03-04 21:14     ` Richard Uhtenwoldt
2002-01-10 12:18 Source version control (Was: [9fans] lucio-) Fco.J.Ballesteros

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=20020110140747.V12098@cackle.proxima.alt.za \
    --to=lucio@proxima.alt.za \
    --cc=9fans@cse.psu.edu \
    /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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).