The aegis program is a transaction base software configuration management system. It is used to supervise the development and integration of changes into projects.
The following functions are available:
-BuildThe
aegis -Build
command is used to
build a project.
See
aeb(1)
for more information.
-Change_AttributesThe
aegis -Change_Attributes
command is used to
modify the attributes of a change.
See
aeca(1)
for more information.
-Change_DirectoryThe
aegis -Change_Directory
command is used to
change directory.
See
aecd(1)
for more information.
-Change_OwnerThe
aegis -Change_Owner
command is used to
facilitate reassignment of the developer of a change in the
being developed
state.
See
aechown(1)
for more information.
-CLoneThe
aegis -CLone
command is used to
exactly replicate a change, usually on another branch.
See
aeclone(1)
for more information.
-CoPy_fileThe
aegis -CoPy_file
command is used to
copy a file into a change.
See
aecp(1)
for more information.
-CoPy_file_UndoThe
aegis -Copy_File_Undo
command is used to
remove a copy of a file from a change.
See
aecpu(1)
for more information.
-DELta_NAmeThe
aegis -DELta_NAme
command is used to
add a symbolic name to a project delta.
See
aedn(1)
for more information.
-Develop_BeginThe
aegis -Develop_Begin
command is used to
begin development of a change.
See
aedb(1)
for more information.
-Develop_Begin_UndoThe
aegis -Develop_Begin_Undo
command is used to
cease development of a change.
See
aedbu(1)
for more information.
-Develop_EndThe
aegis -Develop_End
command is used to
complete development of a change.
See
aede(1)
for more information.
-Develop_End_UndoThe
aegis -Develop_End_Undo
command is used to
recall a change for further development.
See
aedeu(1)
for more information.
-DIFFerenceThe
aegis -DIFFerence
command is used to
find differences between development directory and baseline.
See
aed(1)
for more information.
-HelpThis option may be used to obtain more information about how to use the aegis program.
-Integrate_BeginThe
aegis -Integrate_Begin
command is used to
begin integrating a change.
See
aeib(1)
for more information.
-Integrate_Begin_UndoThe
aegis -Integrate_Begin_Undo
command is used to
cease integrating a change.
See
aeibu(1)
for more information.
-Integrate_FailThe
aegis -Integrate_Fail
command is used to
fail a change integration.
See
aeifail(1)
for more information.
-Integrate_PassThe
aegis -Integrate_PASS
command is used to
pass a change integration.
See
aeipass(1)
for more information.
-ListThe
aegis -List
command is used to
list interesting things.
See
ael(1)
for more information.
-MoVe_fileThe
aegis -MoVe_file
command is used to
change the name of a file
as part of a change.
See
aemv(1)
for more information.
-MoVe_file_UndoThe
aegis -MoVe_file_Undo
command is used to undo a
change to the name of a file
as part of a change.
See
aemvu(1)
for more information.
-New_AdministratorThe
aegis -New_Administrator
command is used to
add new administrators to a project.
See
aena(1)
for more information.
-New_BRanchThe
aegis -New_BRanch
command is used to
add a new branch to a project.
See
aenbr(1)
for more information.
-New_BRanch_UndoThe
aegis -New_BRanch_Undo
command is used to
remove a new branch from a project.
See
aenbru(1)
for more information.
-New_ChangeThe
aegis -New_Change
command is used to
add a new change to a project.
See
aenc(1)
for more information.
-New_Change_UndoThe
aegis -New_Change_Undo
command is used to
remove a new change from a project.
See
aencu(1)
for more information.
-New_DeveloperThe
aegis -New_Developer
command is used to add
new developers to a project.
See
aend(1)
for more information.
-New_FileThe
aegis -New_File
command is used to
add new files to a change.
See
aenf(1)
for more information.
-New_File_UndoThe
aegis -New_File_Undo
command is used to
remove new files from a change.
See
aenfu(1)
for more information.
-New_IntegratorThe
aegis -New_Integrator
command is used to
add new integrators to a project.
See
aeni(1)
for more information.
-New_ProjectThe
aegis -New_Project
command is used to
create a new project to be watched over by aegis.
See
aenpr(1)
for more information.
-New_Project_AliasThe
aegis -New_Project_Alias
command is used to
create a new project alias.
See
aenpa(1)
for more information.
-New_ReLeaSeThe
aegis -New_ReLeaSe
command is used to
create a new project from an existing project.
See
aenrls(1)
for more information.
-New_ReViewerThe
aegis -New_ReViewer
command is used to
add new reviewers to a project.
See
aenrv(1)
for more information.
-New_TestThe
aegis -New_Test
command is used to
add a new test to a change.
See
aent(1)
for more information.
-New_Test_UndoThe
aegis -New_Test_Undo
command is used to
remove new tests from a change.
See
aentu(1)
for more information.
-Project_AttributesThe
aegis -Project_Attributes
command is used to
modify the attributes of a project.
See
aepa(1)
for more information.
-Remove_AdministratorThe
aegis -Remove_Administrator
command is used to
remove administrators from a project.
See
aera(1)
for more information.
-Remove_DeveloperThe
aegis -Remove_Developer
command is used to
remove developers from a project.
See
aerd(1)
for more information.
-ReMove_fileThe
aegis -ReMove_file
command is used to
add files to be deleted to a change.
See
aerm(1)
for more information.
-ReMove_file_UndoThe
aegis -Remove_File_Undo
command is used to
remove files to be deleted from a change.
See
aermu(1)
for more information.
-Remove_IntegratorThe
aegis -Remove_Integrator
command is used to
remove integrators from a project.
See
aeri(1)
for more information.
-ReMove_PRojectThe
aegis -ReMove_PRoject
command is used to
remove a project.
See
aermpr(1)
for more information.
-Remove_Project_AliasThe
aegis -Remove_Project_Alias
command is used to
remove a project alias.
See
aerpa(1)
for more information.
-Remove_ReViewerThe
aegis -Remove_ReViewer
command is used to
remove reviewers from a project.
See
aerrv(1)
for more information.
-RePorTThe
aegis -RePorT
command is used to
generate reports from aegis' database.
These reports may be written by users,
or be distributed with aegis.
-Review_FailThe
aegis -Review_Fail
command is used to
fail a change review.
See
aerfail(1)
for more information.
-Review_BeginThe
aegis -Review_Begin
command is used to
begin to review a change.
See
aerb(1)
for more information.
-Review_Begin_UndoThe
aegis -Review_Begin_Undo
command is used to stop reviewing a change.
See
aerbu(1)
for more information.
-Review_PassThe
aegis -Review_PASS
command is used to
pass a change review.
See
aerpass(1)
for more information.
-Review_Pass_UndoThe
aegis -Review_Pass_Undo
command is used to
rescind a change review pass.
See
aerpu(1)
for more information.
-TestThe
aegis -Test
command is used to
run tests.
See
aet(1)
for more information.
-VERSionThe
aegis -VERSion
command is used to
get copyright and version details.
See
aev(1)
for more information.
All function selectors are case insensitive. Function selectors may be abbreviated; the abbreviation is the upper case letters. Function selectors must appear as the first command line argument.
Many aegis commands are capable of notification that they have
been run. The individual commands document those specific to them.
For documentation on the various configurable notifications, see
aepconf(5) and aepattr(5) for more information.
The following options are available to all functions. These options may appear anywhere on the command line following the function selectors.
-LIBrary abspathThis option may be used to
specify a directory to be searched for global state files and
user state files.
(See
aegstate(5)
and
aeustate(5)
for more information.)
Several library options may be present on the command line,
and are search in the order given.
Appended to this explicit search path are the directories specified
by the
AEGIS_PATH
environment variable (colon separated),
and finally,
/usr/local/lib/aegis
is always searched.
All paths specified,
either on the command line or in the
AEGIS_PATH
environment variable,
must be absolute.
-VerboseThis option may be used to cause aegis to produce more output.
By default aegis only produces output on errors.
When used with the
-List
option
this option causes column headings to be added.
The following options are available to most functions. These options may appear anywhere on the command line following the function selectors.
-Project nameThis option may be used to select the project of interest.
When no
-Project
option is specified,
the
AEGIS_PROJECT
environment variable is consulted.
If that does not exist,
the user's
$HOME/.aegisrc
file is examined for a default project field (see
aeuconf(5)
for more information).
If that does not exist,
when the user is only working on changes within a single project,
the project name defaults to that project.
Otherwise,
it is an error.
-Change numberThis option may be used to specify a particular change within a project.
When no
-Change
option is specified,
the
AEGIS_CHANGE
environment variable is consulted.
If that does not exist,
the user's
$HOME/.aegisrc
file is examined for a default change field (see
aeuconf(5)
for more information).
If that does not exist,
when the user is only working on one change within a project,
that is the default change number.
Otherwise,
it is an error.
-Change project\.CnumberAs a shortcut, it is possible to combine the -\Project and
-Change options into a single option.
-Change branch\.CnumberSeveral functions accept a -BRanch option; it is possible to
combine the -BRanch and -Change options in a single option.
(This intentinally has the same form as the ${version} substitution
output for incomplete changes.)
-Change branch\.DnumberSeveral functions accept both the -BRanch and -Delta options
(or -BRanch and -Change-From-Delta options); it is possible
to combine them in a single option. (This intentinally has the same
form as the ${version} substitution output for completed changes.)
-Change project\.DnumberIt is possible to combine the -Project and
-Change-From-Delta options as a single option.
-Change UUIDEach completed change is assigned a globally unique identifier (UUID). You can specify a change by its 36-character UUID, or any unambiguous leading prefix of the UUID (it must be at least 4 characters, and not look like a number).
The following options are available to all listings. These options may appear anywhere on the command line following the function selectors.
-PAGerThe output of listings and help is piped through the pager command
given in the PAGER environment variable
(or more if not set).
This is the default if the command is in the foreground,
and the output is a TTY.
This option may be used to override any preference specified in the
aeuconf(5)
file.
-No_PAGerThis option may be used to ensure that the output of listings and help
is not piped through a pager command.
This is the default if the command is in the background,
or if the output is not a TTY.
This option may be used to override any preference specified in the
aeuconf(5)
file.
-Page_Length numberThis option may be used to set the page length of listings.
The default,
in order of preference,
is obtained from the system,
from the LINES environment variable,
or set to 24 lines.
-Page_Width numberThis option may be used to set the page width of listings and error messages. The default, in order of preference, is obtained from the system, from the COLS environment variable, or set to 79 characters.
-TERseThis option may be used to cause listings to produce the bare minimum of information. It is usually useful for shell scripts.
-UNFormattedThis option may be used with most listings to specify that the column formatting is not to be performed. This is useful for shell scripts.
-Page-HeadingsThis option requests that page headings be present in listings and reports. This is the default.
-No-Page-HeadingsThis option requests that page headings be omitted from listings and reports.
See also aegis(1) for options common to all aegis commands.
All options may be abbreviated; the abbreviation is documented as the upper case letters, all lower case letters and underscores (_) are optional. You must use consecutive sequences of optional letters.
All options are case insensitive, you may type them in upper case or lower case or a combination of both, case is not important.
For example:
the arguments "-project, "-PROJ" and "-p" are
all interpreted to mean the -Project option.
The argument "-prj" will not be understood,
because consecutive optional characters were not supplied.
Options and other command line arguments may be mixed arbitrarily on the command line, after the function selectors.
The GNU long option names are understood.
Since all option names for
aegis
are long,
this means ignoring the extra leading '-'.
The "--option=value" convention is also understood.
The aegis command will exit with a status of 1 on any error. The aegis command will only exit with a status of 0 if there are no errors.
The aegis command understands the following environment variables:
A colon-separated list of library directories.
See the
-LIBrary
option for a description how this environment variable is used.
Names a default project.
See the
-Project
option for a description how this environment variable is used.
Specifies a default change.
See the
-Change
option for a description how this environment variable is used.
This environment variable is used to hold
aeuconf(5)
information,
and over-rides the settings in the users
.aegisrc
file.
This is intended to be used within the tests distributed with aegis,
but can also be of use within some shell scripts.
Specifies the number of seconds to delay execution within commands which set time stamps. This is intended to be used within the tests distributed with aegis, but can also be of use within some shell scripts.
A colon-separated list of directories which the automounter may use to mount file systems. Use with extreme care, as this distorts Aegis' idea of the shape of the filesystem.
This feature assumes
that paths below the automounter's mount directory are echoes of paths
without it.
E.g. When /home is the trigger, and
/tmp_mnt/home is where the on-demand NFS mount is performed, with
/home appearing to processes to be a symlink.
This is the behavior of the Sun automounter. The AMD automounter is capable of being configured in this way, though it is not typical of the examples in the manual. Nor is it typical of the out-of-the-box Linux AMD configuration in many distributions.
Specifies the page width for errors and listings.
See the
-Page_Width
option for a description how this environment variable is used.
Specifies the program use to edit files when
the
-Edit
or
-Edit_BackGround
options are used.
(See also the
VISUAL
environment variable.)
Defaults to
vi
if not set.
See the editor_command fields in aeuconf(1) for how to
override this specifically for Aegis.
Specifies the page length for listings.
See the
-Page_Length
option for a description how this environment variable is used.
Specifies the program to use to view listings and help. Not used if output is to a file or a pipe. Defaults to more if not set.
Specifies the program use to edit files when
the
-Edit
option is used.
(See also the
EDITOR
environment variable.)
Defaults to
vi
if not set.
See the visual_command fields in aeuconf(1) for how to
override this specifically for Aegis.
Overrides the datadir as specified at configure invocation. Useful mainly for testing.
When commands are executed by Aegis, it ensures that the
AEGIS_PROJECT, AEGIS_CHANGE, AEGIS_ARCH, LINES and COLS environment
variables are set appropriately. The project configuration file's
project_specific field is also consulted, looking for value's
whose name starts with "setenv:" and sets the corresponding environment
variable. All of the substitutions described by
aesub(5)
are available.
For example: specifying a PATH and a SEARCH_PATH to be used for all commands
may be set as follows:
project_specific =
[
{
name = "setenv:PATH";
value = "/usr/bin:/bin";
},
{
name = "setenv:SEARCH_PATH";
value = "${search_path}";
},
];
As many environment variables as desired may be specified in this way.
aegis(5)aegis file format syntax
aecattr(5)change attributes file format
aecstate(5)change state file format
aedir(5)directory structures
aegstate(5)aegis state file format
aepattr(5)project attributes file format
aepconf(5)project configuration file format
aepstate(5)project state file format
aer(5)report script language definition
aesub(5)available command substitutions
aeuconf(5)user configuration file format
aeustate(5)user state file format
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.