"Archive" or "Repository"?

John A Meinel john at arbash-meinel.com
Wed Nov 16 14:01:51 GMT 2005


Erik Bågfors wrote:
> 2005/11/16, Aaron Bentley <aaron.bentley at utoronto.ca>:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> "Repository" is a term used by CVS, SVN, Darcs, Codeville, Monotone,
>> git, SVK, etc.
>>
>> "Archive" is used by Arch and ArX.
>>
>> The two terms seem to be roughly equivalent, but "Repository" seems to
>> be more widely-used.  Is there any reason we shouldn't call our Archives
>> Repositories instead?
> 
> 
> : [bagfors at zyrgelkwyt]$ ; darcs init --help
> Usage: darcs initialize [OPTION]...
> Initialize a new source tree as a darcs repository.
> 
> : [bagfors at zyrgelkwyt]$ ; bzr init --help
> usage: bzr init [LOCATION]
> 
> Make a directory into a versioned branch.
> 
> : [bagfors at zyrgelkwyt]$ ; darcs get --help
> Usage: darcs get [OPTION]... <REPOSITORY> [<DIRECTORY>]
> Create a local copy of another repository.
> 
> : [bagfors at zyrgelkwyt]$ ; bzr get --help
> usage: bzr branch FROM_LOCATION [TO_LOCATION]
> aliases: get, clone
> 
> Create a new copy of a branch.
> 
> 
> bzr calls this a "branch", darcs calls this a repository.
> 
> For me, branch means something I create a branch off to do some
> hacking on, I will "fork" from that point for a while.  If I just run
> "bzr get http://....../" all I do is create a local copy of that
> repository.  As long as I just pull stuff, it's still just a copy of
> that repository.  If I check something in (and pull stops working),
> than it's a branch for me.
> 
> That's the way it works in my brain.
> 
> For me, "Archive" would be the thing that stores the history and each
> commit etc. In a "normal" repository that would be the .bzr directory
> but in a centralized storage that would be the central storage.
> 
> So, in my mind, a branch might not be the same as a repository, a
> repository is not the same as an archive (although it's stored in
> one).
> 
> But, maybe I'm just adding confusion. I'm happy either way :)

We are calling a branch a single "line-of-development" (that term is
trademarked by Bitmover, so don't dare send this email to anyone else or
we'll all get sued).

What we are turning into a "repository" is a collection of these
branches. Gnu Arch called it an Archive, but SVN and CVS call it
repositories.
Darcs doesn't have the concept of a collection of branches, so it reuses
the term "repository".

I think having a repository be a collection of branches is a decent way
of thinking.

I tried looking into monotone, and eventually I figured out the command
was "monotone setup --db=~/some.db --branch=branch-name"
Their help just says:
     setup DIRECTORY
       setup a new working copy directory

But they develop in branches as well. Though since a single branch can
have multiple head revisions (and I think the merge command defaults to
merging all of them together), it is a slightly different concept as
well. They use an sqlite database as their collection object, so they
just refer to it as a "database".

John
=:->

> 
> /Erik
> 
> 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 249 bytes
Desc: OpenPGP digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20051116/cb51975b/attachment.pgp 


More information about the bazaar mailing list