User:Walters/Packaging VCS key proposl

= Executive Summary =

This proposal is to add an informative comment to the Fedora spec files, of the form:

Example:

= Rationale =

Currently spec files have a lot of metadata about the upstream project; however it lacks one of the most important, which is the upstream revision control system.

Adding this data will allow:


 * Cherrypicking a patch directly from the upstream VCS
 * Correspondence checking between source tarballs and VCS checkouts
 * Automated build scripts to update the spec from VCS
 * In the more distant future, reworking Fedora's packaging to be more VCS-centric (i.e. having a mirror of upstream VCS instead of series of inefficient tarball snapshots in lookaside cache)

= Implementation =

Because RPM only allows a well-known set of keys, this proposal introduces the key with a comment prefix, to ensure that older RPM versions do not complain. A patch has been [submitted upstream] however.

The key format has been influenced by the [Maven SCM format], however we drop the redundant "scm:" prefix.

Supported implementation formats:

git
The   part should be in a format which 'git clone as of Git 1.6.6 will accept, with the additional qualifier that the URL may have a fragment identifer which denotes a branch. Examples: