<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<meta name="description" content="Perforce German User Group">
<meta name="keywords" content="perforce german user group deutsch benutzer gruppe">
<title>Perforce German User Group</title>
<link rel=stylesheet type="text/css" href="style.css">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<h1>Perforce Utilities</h1>
<p>Written by <a href="../../pcp.html">Robert Cowham</a> (Perforce Consulting
Partner and Trainer).</p>
<p>Here are some example utility scripts which I have found useful from time to
time. They are provided with no warranty - <b>use at your own risk! </b>Have a
quick look inside to see parameters etc.</p>
<h3>Visual Source Safe (VSS) Scripts</h3>
<p>A bit hacky (e.g. env stuff still hard coded in) but shows example of how to use VSS OLE
Automation from Perl. They tend to be recursive and take a single parameter
which is VSS path to start from, e.g.</p>
<pre>vss_deleted_files.pl "$/project 1/subdir"
</pre>
<table border="0" style="border-collapse: collapse" bordercolor="#111111" id="AutoNumber1" dir="ltr">
<tr>
<td dir="ltr"><a href="vss_deleted_files.pl">vss_deleted_files.pl</a> </td>
<td dir="ltr">A script to print out a list of VSS files and directories
which are marked as deleted.</td>
</tr>
<tr>
<td dir="ltr"><a href="vss_illegal_filenames.pl">vss_illegal_filenames.pl</a> </td>
<td dir="ltr">Prints out VSS files that are "illegal" as far as Perforce is
concerned (e.g. have @, #, *, % or unprintable chars in their name).</td>
</tr>
<tr>
<td dir="ltr"><a href="vss_linked_files.pl">vss_linked_files.pl</a> </td>
<td dir="ltr">A script to print out a list of linked (shared or branched) files in a VSS
repository. </td>
</tr>
</table>
<h3>Other Utilities</h3>
<table border="0" style="border-collapse: collapse" bordercolor="#111111" id="AutoNumber2" dir="ltr">
<tr>
<td dir="ltr"><a href="specsaver.rb">specsaver.rb</a></td>
<td dir="ltr">A branch of Tony Smith's script - updated for Ruby 1.8 - does
automated versioning of various spec entities (e.g. client specs, branch
specs, labels etc).</td>
</tr>
<tr>
<td dir="ltr"><a href="p4checkpoint.pl">p4checkpoint.pl</a> </td>
<td dir="ltr">A branch of Sandy Currier's script to do checkpoints and backups. Enhance
to do verifies and email the results.</td>
</tr>
<tr>
<td dir="ltr"><a href="SaveLabels.pl">SaveLabels.pl</a></td>
<td dir="ltr">An (old) script which stores the contents of labels as text files in
Perforce. Left for posterity but specsaver.rb above does this better!</td>
</tr>
<tr>
<td dir="ltr"><a href="CreateClient.pl">CreateClient.pl</a></td>
<td dir="ltr">A simple script to create clients from others copying over other stuff
as well as just the views (e.g. options). Again, somewhat dated these days.</td>
</tr>
</table>
<p><span style="font-size: 0.6em">Last updated: $Date: 2003/12/03 $</span></p>
</body>
</html>