Next: , Previous: Importing Project Versions, Up: Top


12 Environment Variables

Certain information that prcs needs is not likely to be the same for different users and installations, and is inconvenient or inappropriate to specify with every command. In such cases, prcs takes the information from environment variables, where they are defined, and uses some implementation-defined default otherwise. prcs checks first the users's environment, then the builder's compile-time environment, and finally uses the documented default. Here is a listing of the environment variables that prcs queries, and their meanings. Run prcs config to see a listing of all the environment variables prcs is aware of and their values.

— Environment Variable: PRCS_CONFLICT_EDITOR

The path of an editor to run on all merged files that generate conflicts immediately after the conflict is produced. This lets you handle conflicts one at a time instead of waiting until a merge has completed.

— Environment Variable: PRCS_DIFF_COMMAND

Like PRCS_MERGE_COMMAND, a command to produce differences when running prcs diff. There are at least 4 arguments: from label, from filename, to label, to filename, preceded by any diff options supplied either on the command line or with the PRCS_DIFF_OPTIONS environment variable. See PRCS_MERGE_COMMAND below for an example.

— Environment Variable: PRCS_DIFF_OPTIONS

If set, this environment variable supplies space-separated arguments for diff. When diff options are supplied on the command line, this variable is ignored.

— Environment Variable: PRCS_JOB_NUMBER

If set, this environment variable specifies a default value for the job number when the -j option is not specified.

— Environment Variable: PRCS_LOGQUERY

When defined, query user at checkin for a New-Version-Log, if one is missing from the project file. See Version-Log and New-Version-Log attributes.

— Environment Variable: PRCS_MERGE_COMMAND

The path of a command to run on files to merge. The command is called with 7 arguments: working label, working filename, common label, common filename, selected label, selected filename, and the output filename. The command is expected to merge the files and place the output in the output filename, which will also be the name of the working file. If there is no common ancestor, the file /dev/null is used. To get the default behavior, you could use the script performing the following:

          diff3 -maE -Lworkinglabel working -Lcommonlabel common \
            -Lselectedlabel selected > output
     

The return value is interpreted as with diff3 (see (diff)Top). Return 0 to indicate no conflicts, 1 to indicate conflicts, and 2 to indicate trouble. Warning: as the result of a symlink, output and working files may be the same! So, the above command will sometimes result in an exploding file because gdiff overwrites itself as it merges.

— Environment Variable: PRCS_PLAIN_FORMAT

Has the same effect as specifying --plain-format on the command line.

— Environment Variable: PRCS_REPOSITORY

Path to the repository. Defaults to $HOME/PRCS. See Repository.

— Environment Variable: RCS_PATH

A colon-separated list of additional directory paths in which to search for utility programs, including those that are part of RCS, the Revision Control System. The current implementation of prcs uses RCS to implement part of its functions (although in general, this fact is transparent to the user). Since there is no universally standard place to install RCS, its location is one of prcs's configuration parameters. Any utilities that prcs cannot find in the RCS_PATH directories it looks for in an installation-specific place.

— Environment Variable: TMPDIR

If set, this environment variable is used for temporary file storage.