> I like the idea of the SHA-1 hashes for a binary repository very much.
> I'm
> not sure that it applies as neatly to a "human readable" repository,
> where
> easily identifiable file names/objects would make debugging a hell of a
> lot
> easier.
You are right. In building a replicatable repository, it is necessary to
construct an object name space that does not have collisions.
Human-generated names don't satisfy this requirement. For subversion, this
is not an immediate objective, but I wonder if it wouldn't be useful to
ponder briefly how replication would eventually be implemented in order to
ensure that the repository name space isn't a problem.
You may be emphasizing the debugging problem unduly. Given the structure of
the DCMS repository, it is very easy to write a script that will tell you,
for each reachable object in the repository, the branch, version, and file
name of that object. That is, a repository browser just isn't that hard to
build, and in light of this the advantages of universally unique names
seemed compelling.
Independent of the merits of SHA hashes, it's useful to have the object name
space and the workspace name space be different. There is no inherent reason
to believe that the most convenient storage of objects in the repository
naturally follows from the history of the development. Also, a level of
indirection at this place in the architecture appears necessary to do a good
job on rename.
shap
Received on Sat Oct 21 14:36:05 2006