A new revision of a library module is created by checking it in with the following command-line syntax:
texis -ci [-module name] [-log msg] [-force] [-lock|-unlock] script
The -ci
option indicates check-in. The module will have the
given name
by which it is known to other scripts; if not
specified it defaults to the base filename of the script
. Its
source code is taken from the script
file. A log message
describing the changes made can optionally be given with the
-log
message; if not specified the user is prompted for a
message.
If the module already exists in the library, the last revision must
be locked by the same remote host for check-in to occur. This helps
ensure that only one programmer is working on the module at a time, so
that changes are "serial" and seen by all. (The -force
option can be given to override this check and force check-in
regardless; the -CI
combines -ci
and -force
.) A
successful check-in unlocks the module by default; the lock can be
maintained by giving the -lock
option.
A new revision of the module with an incrementing version number is deposited. Any scripts that are known to use this module are flagged for re-compilation. In this way a script can be sure of always using the latest version of a module, without having to manually re-compile the script each time.
Note that a specific revision of a module is never modified once checked in: when the module is changed, a new revision is deposited. This preserves old versions in case functionality issues or bugs arise and a previous version is needed. Once checked in, a revision's source file can be deleted if desired, as the source is stored in the library.