On Wed, Apr 18, 2007 at 12:06:48PM +0200, David K??gedal wrote:
quoted
This is perhaps a reasonable wording of my requirement.
"Files from from the VCS should contain a stable machine-usable
identifier that is unique for that revision of the file, without
post-processing to insert the identifier."
But what is the "revision of the file"? The blob ID is just a hash of
the contents, and doesn't say anything about where in the history of
the project it appears. It will usually appear in many "project
revisions", i.e. commits.
The location/context in history of the file is not needed by the
requirement I wrote above.
Since the BlobID is the hash of the contents (taken with all keywords
collapsed obviously) - if the contents are identical, then the blobid is
identical.
Since the contents and blobid are the same, it doesn't matter which
commit you take the file from when you don't care about the history of
that point (eg cat-file, diff).
The file goes out, and when a user throws it (modified) back at us, we
just grab the $BlobId$ and use that to identify what it originally
looked like.
--
Robin Hugh Johnson
Gentoo Linux Developer & Council Member
E-Mail : robbat2@gentoo.org
GnuPG FP : 11AC BA4F 4778 E3F6 E4ED F38E B27B 944E 3488 4E85