This is an old revision of the document!


CVS includes expansion of $FreeBSD$ to the file's revision number on checkout. This makes it possible to:

  • Easily see which revision a source file is at
  • Easily see whether a source file is affected by a security issue (“Revisions of foo.c after 1.12 do not have this problem”)
  • Easily see which revisions of source files a binary is built from

The alternative VCS does not need to support $FreeBSD$ directly. However, it must provide a mechanism to allow developers and end users to carry out those three tasks.

This could be done within whatever CVS importer tool is used for existing CVS revisions, as that tool is writing out the blobs and has access to the CVS revision numbers at the same time. This isn't done in parsecvs yet, but would be easy. However, this revision numbering wouldn't be maintained for new commits to git (since it's distributed, and there's no way to make sensical monotonically-increasing version numbers in a distributed system).

For discussing revisions in debugging, git show shows what sha1 is at the top of your current branch, git-rev-list shows what sha1s are in the history of your branch, and comparing the position a user's latest sha1 with the sha1 of a fix you did in the git-rev-list tells you if a user has a given fix in their tree.

  • versioncontrol/dollarfreebsd.1158760322.txt.gz
  • Last modified: 2006/09/20 13:52
  • by NikClayton