DO NOT REPLY [Bug 4157] New: Add RCS keyword $Header$ to all files to support development

samba-bugs at samba-bugs at
Mon Oct 9 22:07:10 GMT 2006

           Summary: Add RCS keyword $Header$ to all files to support
           Product: rsync
           Version: 2.6.8
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P3
         Component: core
        AssignedTo: wayned at
        ReportedBy: 14709c93 at
         QAContact: rsync-qa at

Add RCS keyword $Header$ to all files to support development.

It would be great to have this added to _all_ the RCS/cvs controlled
files. Many sites/developers manage piles of files/patches, work to
bring them to the recent HEAD/release for submission and so on. Having
these strings present helps to identify the initial source rev of the
file and later on when distilling diffs it can be very useful.  It can
be hard at times to figure out what the initial source rev for a file
was if the file doesn't contain that info and the user adapting the
file/patch is not the author [who might erroneously be expected to
know/remember:-] said info.

# Before
cvs diff -u will show the checked out revnum in the diff header.
However if using raw files as the work base, without cvs, the file and
all subsequent edits are devoid of original version info.  There is no
reference against which to do a cvs diff -ur <rev> if cvs is later
adopted, etc. Especially if the history of the file is not known to
the user.

# Enhancement
Add this literal at some consistent place near the top of all the
files, escape it if needed with the normal conventions.
 Add either:  $Header$  or  $Id$
 Typical escapes:  # $Header$  ,  /* $Header$ */  ,  etc
Cvs commit, enjoy the benefits.

# After
Now it's easier to bring random files/patches in line with cvs.
$Header: /.../foo,v 1.1 2006/10/09 20:50:41 user Exp $
$Id: foo,v 1.1 2006/10/09 20:50:41 user Exp $

Full documentation for this is at:

This could probably be scripted as a one time commit.
find -E . -type f \! -regex '^.*/CVS/.*$' -print0 | xargs -0 ed ...


Configure bugmail:
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.

More information about the rsync mailing list