Perl::Critic::Policy::Miscellanea::RequireRcsKeywords - Put source-control keywords in every file.


This policy is part of Perl::Critic::More, a bleeding edge supplement to Perl::Critic.


Every code file, no matter how small, should be kept in a source-control repository. Adding the magical RCS keywords to your file helps the reader know where the file comes from, in case he or she needs to modify it. This Policy scans your file for comments that look like this:

    # $Revision: 4214 $
    # $Source: /myproject/lib/ $

A common practice is to use the Revision keyword to automatically define the $VERSION variable like this:

    our ($VERSION) = '$Revision: 4214 $' =~ m{ \$Revision: \s+ (\S+) }x;


By default, this policy only requires the Revision, Source, and Date keywords. To specify alternate keywords, specify a value for keywords of a whitespace delimited series of keywords (without the dollar-signs). This would look something like the following in a .perlcriticrc file:

    keywords = Revision Source Date Author Id

See the documentation on RCS for a list of supported keywords. Many source control systems are descended from RCS, so the keywords supported by CVS and Subversion are probably the same.


Jeffrey Ryan Thalhammer <>


Copyright (c) 2005-2013 Imaginative Software Systems. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license can be found in the LICENSE file included with this module.