18 Feb 2006

17Feb06

In a discussion about VCS’s on #bzr, I proposed the following axis in which a VCS’s underpinning can vary:

* core data for a commit: snapshot | changeset | ‘semantic patch’

* commit identifiers: content hash | namespace + sequence | pseudo-random | human assigned

* file location mapping: Unique ids | history analysis | None

We can then categorise systems (I apologise in advance for any errors in classification, please feel free to correct me :):

CVS: snapshot | namespace+sequence | none

git: snapshot | hash | none

svn: snapshot |namespace + sequence | history-analysis

darcs: semantic patch | human assigned | history-analysis

Arch: changeset | namespace | unique-id

bzr = snapshot | pseudo-random | unique-id

monotone = snapshot | hash | history-analysis

etc.

One can also consider what a semantic patch | pseudo random | unique-id using system would be like :)

Update: This has spawned the following wiki page

About these ads


No Responses Yet to “18 Feb 2006”

  1. Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Follow

Get every new post delivered to your Inbox.

Join 976 other followers

%d bloggers like this: