regexps.com
One of the central organizing concepts of arch
is the
project
tree
. For the most part, a project tree is an ordinary tree of
files, directories and symbolic links -- all files that you create and
maintain as part of your project.
In addition to the tree content you create, arch
itself maintains
some control files in a project tree. You should regard these extra
control files as part of your project's content. For example, if you
distribute source for a program managed by arch
, you will
ordinarilly want to include the control files: they are useful to
other people.
To initialize a project tree for the first time, from the root of the tree, use the command:
% larch init-tree
For example, here is how I initialized the project tree containing the
source for arch
itself:
% cd ~/wd/arch % larch init-tree
That will create a subdirectory, at the root of the tree, called
{arch}
. Most arch
control files are stored in the tree rooted at
{arch}
: you should never create, remove, or modify files there by
hand.
When you have multiple project trees for related projects it is good
practice to make them sibling directories. This is because arch
sometimes caches information in project trees and those caches can
speed up some operations. When looking for information in a cache,
arch
looks not only in the current project tree, but in any sibling
project trees. For example, while working on arch
, I might have
several copies of arch
, each for working on a different set of
features:
% cd ~/wd % ls arch arch-branches arch-inventory arch-reporting
In this manual, ~/wd
always refers to a "directory of project
trees". (The convention means the same thing as, but is less
cumbersome than ${PROJECT_TREES}
-- there is no requirement that
your directory of project trees be called ~/wd
, or that you only
have one such directory.)
From any directory within a project tree, the command:
% larch tree-root
prints the full path name of the root of the project tree:
% cd ~/wd/arch/src % larch tree-root /home/lord/wd/archarch: The arch Revision Control System
regexps.com