9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: "Roman V. Shaposhnik" <rvs@sun.com>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] Sources Gone?
Date: Thu, 29 Jan 2009 08:30:31 -0800	[thread overview]
Message-ID: <1233246631.4412.106.camel@goose.sun.com> (raw)
In-Reply-To: <5d375e920901290412k3e48d87dy5261c9b1f1681127@mail.gmail.com>

On Thu, 2009-01-29 at 13:12 +0100, Uriel wrote:
> The issues with replica go beyond its tendency to wipe out complete
> file systems.
>
> It includes, among other things, the performance of a drunken slug,
> and as you well point out, the skils of a schizophrenic monkey for
> managing local changes.

Full disclosure: I don't use replica. But...

> All this has been solved by git and hg; and git and hg would *never*
> wipe out your local files simply because the backing store for the
> repository you are pulling from happens to break, the pull simply
> would fail and leave your local repo intact, and when the remote repo
> is brought back, all would work just fine.

...I'm really somewhat of a Git buff. So I'm obviously interested
in this discussion.

As was pointed out in a different thread Git architecture is, in fact,
quite close to venti/fossil. Venti is the immutable hash addressed
history and fossil is the index. Thus the way Git transfers history
between the repositories is conceptually very similar to transferring
venti blocks that can be reached from a designated set of VtRoots.

This has a number of useful properties in Git: the state of the history
repository has nothing to do with the state of your local write
buffer (index). You may fetch quite a few additional blocks of history,
but that doesn't force you to "reformat" your write buffer. In fact,
it is usually a good idea to: fetch, inspect and only then do
a "merge".

replica, on the other hand, tries to not rely on anything but its own
functionality, effectively making it possible to manage changes backed
by something other than fossil/venti. Replica is trying to be more
like rsync, than Git.

I've come to realize that this might be, in fact, the key problem.

Git itself is not afraid to admit that it *is* a filesystem. Linus
said it explicitly on quite a few occasions. We already have a
filesystem. Do we need another one?

> Oh, and they are both *excellent* at helping one keep track of local
> changes without messing everything up.
>
> Of course they also help with things like merges, changelog
> generation, etc. but I suspect those things are not really wanted.

And that is a complementary problem to all of the above: your history
is as good (and as helpful in doing merges, etc.) as is the effort
put into creating it in the first place. A conversation on this list
a month or so ago completely convinced me that those who make changes
to Plan9 sources see very little value in maintaining history that way.

Thanks,
Roman.




  parent reply	other threads:[~2009-01-29 16:30 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-23 11:56 Gregory Pavelcak
2009-01-23 14:15 ` erik quanstrom
2009-01-23 14:54 ` lucio
2009-01-23 15:09   ` erik quanstrom
2009-01-27 22:59   ` Uriel
2009-01-27 23:32     ` Russ Cox
2009-01-28  0:58       ` Kenji Arisawa
2009-01-28  5:06       ` Uriel
2009-01-28 11:46         ` Iruata Souza
2009-01-28 12:41           ` Charles Forsyth
2009-01-28 13:53         ` erik quanstrom
2009-01-29 12:12           ` Uriel
2009-01-29 13:37             ` erik quanstrom
2009-01-29 16:45               ` Roman V. Shaposhnik
2009-01-29 16:15             ` ron minnich
2009-01-29 16:34               ` Roman V. Shaposhnik
2009-01-29 16:30             ` Roman V. Shaposhnik [this message]
2009-01-29 17:18               ` Russ Cox
2009-01-29 17:30                 ` erik quanstrom
2009-01-29 17:43                   ` Russ Cox
2009-01-29 17:39                 ` gas
2009-01-29 21:09                 ` Roman V. Shaposhnik
2009-01-29 21:42                   ` erik quanstrom
2009-01-29 23:05                     ` Roman V. Shaposhnik
2009-01-29 23:49                       ` erik quanstrom
2009-01-30  0:28                         ` Russ Cox
2009-01-30  4:46                           ` [9fans] Venti and version control (Was: Sources Gone?) lucio
2009-01-30  5:18                       ` [9fans] Sources Gone? lucio
2009-01-31 13:45                         ` Bruce Ellis
2009-01-31 18:12                           ` Akshat Kumar
2009-01-31 18:44                             ` Bruce Ellis
2009-02-02 22:33                         ` Roman V. Shaposhnik
2009-02-02 22:43                           ` erik quanstrom
2009-02-02 23:26                             ` Roman V. Shaposhnik
2009-02-02 23:39                               ` erik quanstrom
2009-02-03 10:04                             ` Richard Miller
2009-02-03  4:23                           ` lucio
2009-02-03  5:23                             ` erik quanstrom
2009-02-03  5:47                               ` lucio
2009-02-03 12:54                                 ` erik quanstrom
2009-02-03 13:38                                   ` roger peppe
2009-02-03 14:01                                     ` erik quanstrom
2009-02-03 16:13                                       ` Anthony Sorace
2009-02-03 16:22                                         ` erik quanstrom
2009-02-03 16:51                                       ` roger peppe
2009-02-03 16:55                                         ` erik quanstrom
2009-02-03 17:30                                         ` Brian L. Stuart
2009-02-05  1:24                                           ` Roman V. Shaposhnik
2009-02-03 17:42                                       ` lucio
2009-02-03 17:40                                     ` lucio
2009-02-03 17:51                                       ` erik quanstrom
2009-02-04  8:40                                   ` sqweek
2009-02-04 16:40                                     ` [9fans] Some arithmetic [was: Re: Sources Gone?] Nathaniel W Filardo
2009-02-04 17:10                                       ` Nathaniel W Filardo
2009-02-04 17:49                                       ` hiro
2009-02-05 11:19                                         ` Dave Eckhardt
2009-02-05 17:38                                           ` Russ Cox
2009-02-05 17:41                                             ` erik quanstrom
2009-02-05 18:08                                               ` Roman V. Shaposhnik
2009-02-05 18:22                                                 ` Micah Stetson
2009-02-05 18:29                                                   ` Roman V. Shaposhnik
2009-02-05 18:31                                                     ` erik quanstrom
2009-02-05 18:32                                               ` hiro
2009-01-30  4:25                     ` [9fans] Sources Gone? lucio
2009-01-29 22:33                   ` Russ Cox
2009-01-29 22:58                     ` Roman V. Shaposhnik
2009-01-29 23:06                       ` Russ Cox
2009-01-29 12:13           ` kokamoto
2009-01-27 23:11   ` Patrick Kristiansen
2009-01-28  0:11     ` Tharaneedharan Vilwanathan
2009-01-28  5:55       ` lucio
2009-01-29 18:00 erik quanstrom
2009-01-29 18:00 erik quanstrom
     [not found] <2b0250f2fe16a645a4641825c2f33741@quanstro.net>
2009-02-03 17:27 ` lucio
2009-02-05  1:20   ` Roman V. Shaposhnik

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=1233246631.4412.106.camel@goose.sun.com \
    --to=rvs@sun.com \
    --cc=9fans@9fans.net \
    /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).