Ignore:
Timestamp:
Jul 21, 2024, 1:47:00 PM (2 months ago)
Author:
abarral
Message:

Fix r5093: ship new fcm source

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/Amaury_dev/tools/fcm/doc/release_notes/1-1.html

    r1578 r5094  
    1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    2 
     1<!DOCTYPE html>
    32<html>
    43<head>
    54  <title>FCM 1.1 Release Notes</title>
    6   <meta name="author" content="FCM development team">
    7   <meta name="descriptions" content="FCM Release Notes">
    8   <meta name="keywords" content="FCM, release">
    9   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    10   <link rel="stylesheet" type="text/css" href="style.css">
     5  <meta name="author" content="FCM team" />
     6  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
     7  <link rel="icon" href="../etc/fcm-icon.png" type="image/png" />
     8  <link rel="shortcut icon" href="../etc/fcm-icon.png" type="image/png" />
     9  <link href="../etc/bootstrap/css/bootstrap.min.css" rel="stylesheet" media="screen" />
     10  <link href="../etc/fcm.css" rel="stylesheet" media="screen" />
    1111</head>
    12 
    1312<body>
    14   <h1>FCM 1.1 Release Notes<br>
    15   06 November 2006</h1>
     13  <div class="navbar navbar-inverse">
     14    <div class="container-fluid">
     15      <div class="navbar-header">
     16        <a class="navbar-brand" href=".."><span class="fcm-version">FCM</span></a>
     17      </div>
     18      <div class="collapse navbar-collapse">
     19        <ul class="nav navbar-nav">
     20          <li><a href="../installation/">Installation</a></li>
     21
     22          <li><a href="../user_guide/">User Guide</a></li>
     23        </ul>
     24      </div>
     25    </div>
     26  </div>
     27
     28  <div class="page-header">
     29    <div class="fcm-page-content pull-right well well-sm"></div>
     30    <h1>FCM 1.1 Release Notes <small>06 November 2006</small></h1>
     31  </div>
     32
     33  <div class="container">
     34  <div class="row">
     35  <div class="col-md-12">
    1636
    1737  <p>These are the release notes for FCM release 1.1. You can use this release
    18   of FCM freely under the terms of the <a href="../../LICENSE.html">FCM
    19   LICENSE</a>, which you should receive with this distribution. Release 1.1 is
    20   the first external release of FCM. (Release 1.0, 30 November 2005, was an
    21   internal Met Office release which marked the start of the main migration of
    22   systems into FCM.)</p>
     38  of FCM freely under the terms of the FCM LICENSE, which you should receive
     39  with the distribution of this release. Release 1.1 is the first external
     40  release of FCM.  (Release 1.0, 30 November 2005, was an internal Met Office
     41  release which marked the start of the main migration of systems into FCM.)</p>
    2342
    2443  <p>FCM is maintained by the FCM team at the Met Office. Please feedback any
     
    2645  "mailto:fcm-team@metoffice.gov.uk">e-mail</a>.</p>
    2746
    28   <h2>Contents</h2>
    29 
    30   <ul>
    31     <li><a href="#new">What's New?</a></li>
    32 
    33     <li><a href="#fix">Minor Enhancements &amp; Bug Fixes</a></li>
    34 
    35     <li><a href="#req">System Requirements</a></li>
    36 
    37     <li><a href="#ins">Installation</a></li>
    38   </ul>
    39 
    40   <h2><a name="new" id="new">What's New?</a></h2>
     47  <h2 id="new">What's New?</h2>
    4148
    4249  <p>Build system:</p>
    4350
    4451  <ul>
    45     <li>Support building of Fortran <span class="mono">BLOCKDATA</span> program
    46     units.</li>
     52    <li>Support building of Fortran <code>BLOCKDATA</code> program units.</li>
    4753
    4854    <li>Option to generate Fortran interface files in lower case names after
     
    5258    file.</li>
    5359
    54     <li>The <span class="mono">fcm_env.ksh</span> file now provides an
    55     environment variable for the <span class="mono">etc/</span> sub-directory
    56     of the build which can be used if you are "building" data files.</li>
     60    <li>The <samp>fcm_env.ksh</samp> file now provides an environment variable
     61    for the <samp>etc/</samp> sub-directory of the build which can be used if
     62    you are <em>building</em> data files.</li>
    5763
    5864    <li>The build root directory is now locked while a build is running. This
    5965    prevents multiple instances of build running in the same directory.
    60     However, you can bypass the lock if you specify the new <span class=
    61     "mono">--ignore-lock</span> option with <span class="mono">fcm
    62     build</span>.</li>
     66    However, you can bypass the lock if you specify the new
     67    <code>--ignore-lock</code> option with <code>fcm build</code>.</li>
    6368  </ul>
    6469
     
    6974    running. This prevents multiple instances of extract running in the same
    7075    directory. However, you can bypass the lock if you specify the new
    71     <span class="mono">--ignore-lock</span> option with <span class="mono">fcm
    72     extract</span>.</li>
     76    <code>--ignore-lock</code> option with <code>fcm extract</code>.</li>
    7377  </ul>
    7478
     
    7680
    7781  <ul>
    78     <li><span class="mono">fcm merge</span> now supports custom and reverse
    79     modes.</li>
    80 
    81     <li><span class="mono">fcm merge</span> now allows automatic merges in
    82     sub-trees if it is safe.</li>
    83 
    84     <li><span class="mono">fcm merge</span> now handles automatic merges from
    85     sibling branches that are created at different revisions of the
    86     parent.</li>
    87 
    88     <li><span class="mono">fcm branch, fcm diff --branch</span> and
    89     <span class="mono">fcm merge</span> can now handle creation, diff and
    90     automatic merge of a branch of a branch.</li>
    91 
    92     <li><span class="mono">fcm switch</span> is improved to allow safer
    93     switches of your working copy to point to different branches in your
    94     project.</li>
    95 
    96     <li><span class="mono">fcm commit</span> now displays your location in the
    97     branch, and extra warning when you are committing to the trunk of a
    98     project.</li>
    99 
    100     <li>New <span class="mono">fcm mkpatch</span> command.</li>
     82    <li><code>fcm merge</code> now supports custom and reverse modes.</li>
     83
     84    <li><code>fcm merge</code> now allows automatic merges in sub-trees if it
     85    is safe.</li>
     86
     87    <li><code>fcm merge</code> now handles automatic merges from sibling
     88    branches that are created at different revisions of the parent.</li>
     89
     90    <li><code>fcm branch, fcm diff --branch</code> and <code>fcm merge</code>
     91    can now handle creation, diff and automatic merge of a branch of a
     92    branch.</li>
     93
     94    <li><code>fcm switch</code> is improved to allow safer switches of your
     95    working copy to point to different branches in your project.</li>
     96
     97    <li><code>fcm commit</code> now displays your location in the branch, and
     98    extra warning when you are committing to the trunk of a project.</li>
     99
     100    <li>New <code>fcm mkpatch</code> command.</li>
    101101  </ul>
    102102
     
    111111  </ul>
    112112
    113   <h2><a name="fix" id="fix">Minor Enhancements &amp; Bug Fixes</a></h2>
     113  <h2 id="fix">Minor Enhancements &amp; Bug Fixes</h2>
    114114
    115115  <p>Build system:</p>
     
    123123
    124124    <li>Identify changes in pre-processed source file, the pre-processor
    125     options and "keys" correctly in incremental builds.</li>
     125    options and keys correctly in incremental builds.</li>
    126126
    127127    <li>Improve speed of pre-processing in incremental builds by not performing
     
    138138  <ul>
    139139    <li>Sub-directories are now extracted with the non-recursive mode of
    140     <span class="mono">svn export</span>.</li>
    141 
    142     <li>Peg revisions should now be handled correctly in <span class=
    143     "mono">INC</span> extract declarations.</li>
     140    <code>svn export</code>.</li>
     141
     142    <li>Peg revisions should now be handled correctly in <var>INC</var> extract
     143    declarations.</li>
    144144
    145145    <li>The command should now fail if a declared source directory does not
     
    150150
    151151  <ul>
    152     <li><span class="mono">fcm branch --info</span> and <span class="mono">fcm
    153     diff</span> can now take a <span class="mono">PATH</span> as an
    154     argument.</li>
    155 
    156     <li>The <span class="mono">--ticket</span> option of <span class="mono">fcm
    157     branch --create</span> can now accept multiple tickets.</li>
    158 
    159     <li><span class="mono">fcm branch --info</span> and <span class="mono">fcm
    160     diff --branch</span> should now work correctly in a sub-tree of a
     152    <li><code>fcm branch --info</code> and <code>fcm diff</code> can now take a
     153    <code>PATH</code> as an argument.</li>
     154
     155    <li>The <code>--ticket</code> option of <code>fcm branch --create</code>
     156    can now accept multiple tickets.</li>
     157
     158    <li><code>fcm branch --info</code> and <code>fcm diff --branch</code>
     159    should now work correctly in a sub-tree of a branch.</li>
     160
     161    <li><code>fcm branch --create</code> no longer offers to checkout the
    161162    branch.</li>
    162163
    163     <li><span class="mono">fcm branch --create</span> no longer offers to
    164     checkout the branch.</li>
    165 
    166     <li><span class="mono">fcm commit</span> no longer fails when adding a new
    167     symbolic link.</li>
    168 
    169     <li>The <span class="mono">--password</span> option is now supported by the
    170     <span class="mono">fcm branch --create, fcm branch --delete, fcm
    171     commit</span> and <span class="mono">fcm delete</span> commands.</li>
     164    <li><code>fcm commit</code> no longer fails when adding a new symbolic
     165    link.</li>
     166
     167    <li>The <code>--password</code> option is now supported by the <code>fcm
     168    branch --create</code>, <code>fcm branch --delete</code>, <code>fcm
     169    commit</code> and <code>fcm delete</code> commands.</li>
    172170
    173171    <li>Empty arguments to code management commands are now parsed
    174172    correctly.</li>
    175173
    176     <li>The <span class="mono">fcm diff --graphical</span> option no longer
    177     fails with binary files.</li>
    178 
    179     <li>FCM will always set the environment variable <span class=
    180     "mono">LANG=en_GB</span> before running Subversion commands. This prevents
    181     failure of FCM when it attempts to parse output from Subversion commands
    182     when a different <span class="mono">LANG</span> setting is used.</li>
     174    <li>The <code>fcm diff --graphical</code> option no longer fails with
     175    binary files.</li>
     176
     177    <li>FCM will always set the environment variable <var>LANG=en_GB</var>
     178    before running Subversion commands. This prevents failure of FCM when it
     179    attempts to parse output from Subversion commands when a different
     180    <var>LANG</var> setting is used.</li>
    183181  </ul>
    184182
     
    189187  </ul>
    190188
    191   <h2><a name="req" id="req">System Requirements</a></h2>
    192 
    193   <h3><a name="req_perl" id="req_perl">Perl</a></h3>
     189  <h2 id="req">System Requirements</h2>
     190
     191  <h3 id="req_perl">Perl</h3>
    194192
    195193  <p>The core part of FCM is a set of Perl scripts and modules. For the build
     
    197195
    198196  <ul>
    199     <li class="mono">Carp</li>
    200 
    201     <li class="mono">Cwd</li>
    202 
    203     <li class="mono">File::Basename</li>
    204 
    205     <li class="mono">File::Compare</li>
    206 
    207     <li class="mono">File::Find</li>
    208 
    209     <li class="mono">File::Path</li>
    210 
    211     <li class="mono">File::Spec::Functions</li>
    212 
    213     <li class="mono">File::Spec</li>
    214 
    215     <li class="mono">FindBin</li>
    216 
    217     <li class="mono">Getopt::Long</li>
    218 
    219     <li class="mono">POSIX</li>
     197    <li>Carp</li>
     198
     199    <li>Cwd</li>
     200
     201    <li>File::Basename</li>
     202
     203    <li>File::Compare</li>
     204
     205    <li>File::Find</li>
     206
     207    <li>File::Path</li>
     208
     209    <li>File::Spec::Functions</li>
     210
     211    <li>File::Spec</li>
     212
     213    <li>FindBin</li>
     214
     215    <li>Getopt::Long</li>
     216
     217    <li>POSIX</li>
    220218  </ul>
    221219
     
    224222
    225223  <ul>
    226     <li class="mono">File::Temp</li>
    227 
    228     <li class="mono">Getopt::Long</li>
    229 
    230     <li class="mono">HTTP::Date</li>
    231 
    232     <li class="mono">XML::DOM</li>
     224    <li>File::Temp</li>
     225
     226    <li>Getopt::Long</li>
     227
     228    <li>HTTP::Date</li>
     229
     230    <li>XML::DOM</li>
    233231  </ul>
    234232
     
    237235
    238236  <ul>
    239     <li class="mono">Tk::ROText</li>
    240 
    241     <li class="mono">Tk</li>
     237    <li>Tk::ROText</li>
     238
     239    <li>Tk</li>
    242240  </ul>
    243241
     
    245243  5.8.x. In addition the build system is being used with Perl 5.6.x.</p>
    246244
    247   <h3><a name="req_svn" id="req_svn">Subversion</a></h3>
     245  <h3 id="req_svn">Subversion</h3>
    248246
    249247  <p>To use the code management commands (and relevant parts of the extract
     
    265263  Subversion installed on these platforms.</p>
    266264
    267   <h3><a name="req_trac" id="req_trac">Trac</a></h3>
    268 
    269   <p>The use of <a href="http://projects.edgewall.com/trac/">Trac</a> is
    270   entirely optional (although highly recommended if you are using Subversion).
    271   At the Met Office we are currently using version 0.9.6.</p>
    272 
    273   <h3><a name="req_other" id="req_other">Other Requirements</a></h3>
    274 
    275   <p>The <tt>fcm diff --graphical</tt> and <tt>fcm conflicts</tt> commands
    276   require <a href="http://furius.ca/xxdiff/">xxdiff</a>. At the Met Office we
    277   are currently using version 3.1.</p>
     265  <h3 id="req_trac">Trac</h3>
     266
     267  <p>The use of <a href="http://trac.edgewall.org/">Trac</a> is entirely
     268  optional (although highly recommended if you are using Subversion). At the
     269  Met Office we are currently using version 0.9.6.</p>
     270
     271  <h3 id="req_other">Other Requirements</h3>
     272
     273  <p>The <code>fcm diff --graphical</code> and <code>fcm conflicts</code>
     274  commands require <a href="http://furius.ca/xxdiff/">xxdiff</a>. At the Met
     275  Office we are currently using version 3.1.</p>
    278276
    279277  <p>The build system requires <a href=
     
    282280
    283281  <p>Optionally, the build system can use <a href=
    284   "http://www.ifremer.fr/ditigo/molagnon/fortran90">f90aib</a> to generate
     282  "http://www.ifremer.fr/ditigo/molagnon/fortran90/">f90aib</a> to generate
    285283  interface files. However, there is also a built in Perl based interface file
    286284  generator which is quicker and better in most cases so you are unlikely to
     
    291289  11.00.</p>
    292290
    293   <h2><a name="ins" id="ins">Installation</a></h2>
     291  <h2 id="ins">Installation</h2>
    294292
    295293  <p>FCM is distributed in the form of a compressed tar file. Un-pack the tar
    296   file into an appropriate location on your system. Then add the <tt>bin</tt>
    297   directory into your PATH. Once you have done this you should now have full
    298   access to the FCM system, assuming that you have met the requirements
    299   described in the previous section.</p>
     294  file into an appropriate location on your system. Then add the
     295  <samp>bin/</samp> directory into your <var>PATH</var>. Once you have done this
     296  you should now have full access to the FCM system, assuming that you have met
     297  the requirements described in the previous section.</p>
    300298
    301299  <p>If you wish to define keywords for your systems you will need to create a
    302   file <tt>etc/fcm.cfg</tt>. An example file, <tt>fcm.cfg.eg</tt>, is provided
    303   which is a copy of the file currently used at the Met Office. For further
    304   details please refer to the section <a href=
     300  file <samp>etc/fcm.cfg</samp>. An example file, <samp>fcm.cfg.eg</samp>, is
     301  provided which is a copy of the file currently used at the Met Office. For
     302  further details please refer to the section <a href=
    305303  "../user_guide/system_admin.html#fcm-keywords">FCM keywords</a> in the System
    306304  Admin chapter of the User Guide.</p>
    307305
    308   <p>The <tt>doc</tt> directory contains all the system documentation.</p>
    309 
    310   <ul>
    311     <li><tt>doc/release_notes</tt> contains these release notes. It also
     306  <p>The <samp>doc/</samp> directory contains all the system documentation.</p>
     307
     308  <ul>
     309    <li><samp>doc/release_notes/</samp> contains these release notes. It also
    312310    contains the release notes for all previous versions which may be useful if
    313311    you have skipped any versions.</li>
    314312
    315     <li><tt>doc/user_guide</tt> contains the FCM User Guide in both <a href=
    316     "../user_guide/index.html">HTML</a> and <a href=
     313    <li><samp>doc/user_guide/</samp> contains the FCM User Guide in both
     314    <a href="../user_guide/">HTML</a> and <a href=
    317315    "../user_guide/fcm-user-guide.pdf">PDF</a> form.</li>
    318316
    319     <li><tt>doc/design</tt> contains the <a href="../design/index.html">FCM
    320     Detailed Design</a> document (currently in draft form).</li>
    321 
    322     <li><tt>doc/standards</tt> contains the FCM <a href=
     317    <li><samp>doc/design/</samp> contains the <a href="../design/">FCM Detailed
     318    Design</a> document (currently in draft form).</li>
     319
     320    <li><samp>doc/standards/</samp> contains the FCM <a href=
    323321    "../standards/perl_standard.html">Perl</a> and <a href=
    324322    "../standards/fortran_standard.html">Fortran</a> coding standards. The Perl
     
    330328  </ul>
    331329
    332   <p>The <tt>tutorial</tt> directory contains the files necessary to set up a
    333   tutorial repository. This will allow you to follow the <a href=
     330  <p>The <samp>tutorial/</samp> directory contains the files necessary to set
     331  up a tutorial repository. This will allow you to follow the <a href=
    334332  "../user_guide/getting_started.html#tutorial">tutorial section</a> in the
    335333  User Guide.</p>
    336334
    337335  <ul>
    338     <li>The file <tt>tutorial/repos/tutorial.dump</tt> should be loaded into an
    339     empty repository using the <tt>svnadmin load</tt> command.</li>
    340 
    341     <li>The hook scripts in <tt>tutorial/hook</tt> should then be installed in
    342     this repository in order to prevent any commits to the trunk. Note that the
    343     configuration file <tt>svnperms.conf</tt> assumes that the tutorial
    344     repository is called <tt>tutorial_svn</tt>. Please edit this file if you
    345     use a different name.</li>
     336    <li>The file <samp>tutorial/repos/tutorial.dump</samp> should be loaded
     337    into an empty repository using the <code>svnadmin load</code> command.</li>
     338
     339    <li>The hook scripts in <samp>tutorial/hook/</samp> should then be
     340    installed in this repository in order to prevent any commits to the trunk.
     341    Note that the configuration file <samp>svnperms.conf</samp> assumes that
     342    the tutorial repository is called <samp>tutorial_svn</samp>. Please edit
     343    this file if you use a different name.</li>
    346344
    347345    <li>The repository should be configured to allow users write access. You
     
    353351  </ul>
    354352
    355   <p>The <tt>templates</tt> directory contains various example scripts which
    356   you may find useful. Note that these scripts are all specific to the Met
    357   Office and may contain hard coded paths and email addresses. They are
     353  <p>The <samp>templates/</samp> directory contains various example scripts
     354  which you may find useful. Note that these scripts are all specific to the
     355  Met Office and may contain hard coded paths and email addresses. They are
    358356  provided in the hope that you may find them useful as templates for setting
    359357  up similar scripts of your own. However, they should only be used after
     
    361359  follows:</p>
    362360
    363   <table summary="list of template scripts" border="1" width="100%">
    364     <tr>
    365       <th>Script</th>
    366 
    367       <th>Description</th>
    368     </tr>
    369 
    370     <tr>
    371       <th>templates/hook/pre-commit</th>
    372 
    373       <td>
    374         This script restricts write-access to the repository by checking the
    375         following:
    376 
    377         <ul>
    378           <li>It executes the Subversion utility <tt>svnperms.py</tt> if it
    379           exists. This utility checks whether the author of the current
    380           transaction has enough permission to write to particular paths in the
    381           repository.</li>
    382 
    383           <li>It checks the disk space required by the current transaction. It
    384           fails the commit if it requires more than 5Mb of disk space.</li>
    385         </ul>
    386       </td>
    387     </tr>
    388 
    389     <tr>
    390       <th>templates/hook/post-commit</th>
    391 
    392       <td>A simple post-commit hook script which runs the script
    393       <tt>post-commit-background</tt> in the background.</td>
    394     </tr>
    395 
    396     <tr>
    397       <th>templates/hook/post-commit-background</th>
    398 
    399       <td>
    400         This script runs in the background after each commit
    401 
    402         <ul>
    403           <li>It updates a <tt>&lt;repos&gt;.latest</tt> file with the latest
    404           revision number.</li>
    405 
    406           <li>It creates a dump of the new revision.</li>
    407 
    408           <li>It calls the script <tt>background_updates.pl</tt> if it
    409           exists.</li>
    410         </ul>This script is installed as standard in all our repositories.
    411       </td>
    412     </tr>
    413 
    414     <tr>
    415       <th>templates/hook/background_updates.pl</th>
    416 
    417       <td>An example of how you may want to set up a
    418       <tt>background_updates.pl</tt> script to perform post-commit tasks for a
    419       specific repository. This script uses a lock file to prevent multiple
    420       commits in quick succession from causing problems.</td>
    421     </tr>
    422 
    423     <tr>
    424       <th>templates/hook/pre-revprop-change</th>
    425 
    426       <td>A simple pre-revprop-change hook script which runs the script
    427       <tt>pre-revprop-change.pl</tt>.</td>
    428     </tr>
    429 
    430     <tr>
    431       <th>templates/hook/pre-revprop-change.pl</th>
    432 
    433       <td>If a user attempts to modify the log message of a changeset and
    434       he/she is not the original author of the changeset, this script will
    435       e-mail the original author. You can also set up a watch facility to
    436       monitor changes of log messages that affect particular paths in the
    437       repository. For further details please refer to the section <a href=
    438       "../user_guide/system_admin.html#svn_watch">Watching changes in log
    439       messages</a> in the System Admin chapter of the User Guide.</td>
    440     </tr>
    441 
    442     <tr>
    443       <th>templates/hook/post-revprop-change</th>
    444 
    445       <td>A simple post-revprop-change hook script which runs the script
    446       <tt>post-revprop-change.py</tt>.</td>
    447     </tr>
    448 
    449     <tr>
    450       <th>templates/hook/post-revprop-change.py</th>
    451 
    452       <td>This hook script updates the Trac SQLite database following a
    453       successful change in the log message.</td>
    454     </tr>
    455 
    456     <tr>
    457       <th>templates/utils/cron_template.ksh</th>
    458 
    459       <td>An example of how you might set up a cron job to make use of the
    460       <tt>&lt;repos&gt;.latest</tt> file.</td>
    461     </tr>
    462 
    463     <tr>
    464       <th>templates/utils/daily_cron</th>
    465 
    466       <td>The cron job which we run each night. It verifies and backs up each
    467       of our repositories, housekeeps the revision dumps created by
    468       <tt>post-commit-background</tt> and backs up each of our Trac systems. It
    469       also handles the distribution of FCM to various platforms at the Met
    470       Office.</td>
    471     </tr>
    472 
    473     <tr>
    474       <th>templates/utils/fcm_add_trac.pl</th>
    475 
    476       <td>This script sets up a new Trac system and applies some configuration
    477       options which we use by default at the Met Office.</td>
    478     </tr>
    479 
    480     <tr>
    481       <th>templates/utils/recover_svn.pl</th>
    482 
    483       <td>This script allows us to recover all of our Subversion repositories
    484       by using the nightly backups and the repository dumps.</td>
    485     </tr>
    486   </table>
     361  <dl>
     362    <dt>templates/hook/pre-commit</dt>
     363
     364    <dd>
     365      This script restricts write-access to the repository by checking the
     366      following:
     367
     368      <ul>
     369        <li>It executes the Subversion utility <code>svnperms.py</code> if it
     370        exists. This utility checks whether the author of the current
     371        transaction has enough permission to write to particular paths in the
     372        repository.</li>
     373
     374        <li>It checks the disk space required by the current transaction. It
     375        fails the commit if it requires more than 5Mb of disk space.</li>
     376      </ul>
     377    </dd>
     378
     379    <dt>templates/hook/post-commit</dt>
     380
     381    <dd>A simple post-commit hook script which runs the script
     382    <code>post-commit-background</code> in the background.</dd>
     383
     384    <dt>templates/hook/post-commit-background</dt>
     385
     386    <dd>
     387      This script runs in the background after each commit.
     388
     389      <ul>
     390        <li>It updates a <samp>&lt;repos&gt;.latest</samp> file with the latest
     391        revision number.</li>
     392
     393        <li>It creates a dump of the new revision.</li>
     394
     395        <li>It calls the script <code>background_updates.pl</code> if it
     396        exists.</li>
     397      </ul>This script is installed as standard in all our repositories.
     398    </dd>
     399
     400    <dt>templates/hook/background_updates.pl</dt>
     401
     402    <dd>An example of how you may want to set up a
     403    <code>background_updates.pl</code> script to perform post-commit tasks for
     404    a specific repository. This script uses a lock file to prevent multiple
     405    commits in quick succession from causing problems.</dd>
     406
     407    <dt>templates/hook/pre-revprop-change</dt>
     408
     409    <dd>A simple pre-revprop-change hook script which runs the script
     410    <code>pre-revprop-change.pl</code>.</dd>
     411
     412    <dt>templates/hook/pre-revprop-change.pl</dt>
     413
     414    <dd>If a user attempts to modify the log message of a changeset and he/she
     415    is not the original author of the changeset, this script will e-mail the
     416    original author. You can also set up a watch facility to monitor changes of
     417    log messages that affect particular paths in the repository. For further
     418    details please refer to the section <a href=
     419    "../user_guide/system_admin.html#svn_watch">Watching changes in log
     420    messages</a> in the System Admin chapter of the User Guide.</dd>
     421
     422    <dt>templates/hook/post-revprop-change</dt>
     423
     424    <dd>A simple post-revprop-change hook script which runs the script
     425    <code>post-revprop-change.py</code>.</dd>
     426
     427    <dt>templates/hook/post-revprop-change.py</dt>
     428
     429    <dd>This hook script updates the Trac SQLite database following a
     430    successful change in the log message.</dd>
     431
     432    <dt>templates/utils/cron_template.ksh</dt>
     433
     434    <dd>An example of how you might set up a cron job to make use of the
     435    <samp>&lt;repos&gt;.latest</samp> file.</dd>
     436
     437    <dt>templates/utils/daily_cron</dt>
     438
     439    <dd>The cron job which we run each night. It verifies and backs up each of
     440    our repositories, housekeeps the revision dumps created by
     441    <code>post-commit-background</code> and backs up each of our Trac systems.
     442    It also handles the distribution of FCM to various platforms at the Met
     443    Office.</dd>
     444
     445    <dt>templates/utils/fcm_add_trac.pl</dt>
     446
     447    <dd>This script sets up a new Trac system and applies some configuration
     448    options which we use by default at the Met Office.</dd>
     449
     450    <dt>templates/utils/recover_svn.pl</dt>
     451
     452    <dd>This script allows us to recover all of our Subversion repositories by
     453    using the nightly backups and the repository dumps.</dd>
     454  </dl>
     455
     456  </div>
     457  </div>
     458  </div>
     459
     460  <hr/>
     461  <div class="container-fluid text-center">
     462    <div class="row"><div class="col-md-12">
     463    <address><small>
     464      Copyright &copy; 2006-2021 British Crown (Met Office) &amp; Contributors.
     465      <a href="http://www.metoffice.gov.uk">Met Office</a>.
     466      See <a href="../etc/fcm-terms-of-use.html">Terms of Use</a>.<br />
     467      This document is released under the British <a href=
     468      "http://www.nationalarchives.gov.uk/doc/open-government-licence/" rel=
     469      "license">Open Government Licence</a>.<br />
     470    </small></address>
     471    </div></div>
     472  </div>
     473
     474  <script type="text/javascript" src="../etc/jquery.min.js"></script>
     475  <script type="text/javascript" src="../etc/bootstrap/js/bootstrap.min.js"></script>
     476  <script type="text/javascript" src="../etc/fcm.js"></script>
     477  <script type="text/javascript" src="../etc/fcm-version.js"></script>
    487478</body>
    488479</html>
Note: See TracChangeset for help on using the changeset viewer.