Name

aedir — aegis directory structures

DESCRIPTION

The project directory structure is dictated by aegis at the top level, but is completely under the project's control from various points below the top level.

The project directory has the following contents


project/
baseline/
aegis.conf
...project specific...
test/
[0-9][0-9]/
t[0-9][0-9][0-9][0-9]a.sh
t[0-9][0-9][0-9][0-9]m.sh
history/
...echo of baseline...
delta.[0-9][0-9][0-9]/
...echo of baseline...
info/
state
change/
[0-9]/
[0-9][0-9][0-9]

The directory is structured in this way so that it is possible to pick an entire project up off the disk, and be confident that you got it all.

The location of the root of this tree is configurable, and may even be changed during the life of a project.

The contents of the baseline subdirectory, other than those given, are defined by the project, and not dictated by aegis.

The contents of the delta.NNN directory, when it exists, are an image of the baseline directory. It is frequently linked with the baseline, rather than a copy of it; see the link_integration_directory field description in aepconf(5) for more information.

The contents of the history contains the edit histories of the baseline directory, and is in all other ways an image of it. Note that baseline always contains the latest source; the history directory is just history. The actual files in the history directory tree will not always have names the same as those in the baseline; compare the methods used by SCCS and RCS.

The contents of the baseline/test directory are the tests which are created by changes. Test histories are also stored in the history subdirectory. Tests are treated as project source.

The edit histories are separated out to simplify the task of taking a "snapshot" of the source of a project, without airing all the dirty laundry.

The baseline directory always contains the latest source, and so the history directory need not be readily accessible, because the build mechanism (something like make(1), but preferably better) does not need to know anything about it. Similarly for tests.

The baseline/aegis.conf file is used to tell aegis everything else it needs to know about a project. See aepconf(5) for more information. This file is a source file of the project, and is treated in the same way as all source files. The name of this file is not mandatory.

SEE ALSO

aenc(1)

create a new change

aenpr(1)

create a new project

aegis(5)

aegis file format syntax

aepconf(5)

project configuration file format

COPYRIGHT

aegis version 4.22 Copyright (C) 1991-2006 Peter Miller; All rights reserved.

The aegis program comes with ABSOLUTELY NO WARRANTY; for details use the 'aegis -VERSion License' command. This is free software and you are welcome to redistribute it under certain conditions; for details use the 'aegis -VERSion License' command.

AUTHOR

Peter MillerE-Mail:millerp@canb.auug.org.au
/\/\*WWW:http://www.canb.auug.org.au/~millerp/