Command Directory
Most of the revision control systems out there can perform in any of the project's subdirectories. For that and other technical reasons, Patcher will normally execute all commands in the specified (sub)directory of the specified (sub)project. This principle does not always hold however. For example, PRCS (weird, did I mention it already?) can only work in the project's root directory.
If you want to define projects for which the revision control system can
be executed in only one directory, Patcher provides you with the
:command-directory
project option (a string). This directory must
be provided relative to the project's directory (but note that it must
usually go upwards).
All commands (diff and commit ones) will be executed from there. Also, note that the command directory does not change the way you might specify files. Patcher modifies all needed paths automatically to handle the command directory properly. This means that you should continue to specify files relatively to the (sub)project's (sub)directory, regardless of the existence of a command directory.
When needed, a command directory should always be specified in a project (in which case it will most likely be the same as the project's directory) and never in subprojects. Otherwise, temporary subprojects would fail to get it.