aegis(1) aegis(1) NNAAMMEE aegis - project change supervisor SSYYNNOOPPSSIISS aaeeggiiss _f_u_n_c_t_i_o_n [ _o_p_t_i_o_n... ] aaeeggiiss --HHeellpp DDEESSCCRRIIPPTTIIOONN The _a_e_g_i_s program is a transaction base software configuration management system. It is used to supervise the development and integration of changes into projects. FFUUNNCCTTIIOONNSS The following functions are available: --BBuuiilldd The _a_e_g_i_s _-_B_u_i_l_d command is used to build a project. See _a_e_b(1) for more information. --CChhaannggee__AAttttrriibbuutteess The _a_e_g_i_s _-_C_h_a_n_g_e___A_t_t_r_i_b_u_t_e_s command is used to modify the attributes of a change. See _a_e_c_a(1) for more information. --CChhaannggee__DDiirreeccttoorryy The _a_e_g_i_s _-_C_h_a_n_g_e___D_i_r_e_c_t_o_r_y command is used to change directory. See _a_e_c_d(1) for more information. --CChhaannggee__OOwwnneerr The _a_e_g_i_s _-_C_h_a_n_g_e___O_w_n_e_r command is used to facilitate reassignment of the developer of a change in the _b_e_i_n_g _d_e_v_e_l_o_p_e_d state. See _a_e_c_h_o_w_n(1) for more information. --CCLLoonnee The _a_e_g_i_s _-_C_L_o_n_e command is used to exactly replicate a change, usually on another branch. See _a_e_c_l_o_n_e(1) for more information. --CCooPPyy__ffiillee The _a_e_g_i_s _-_C_o_P_y___f_i_l_e command is used to copy a file into a change. See _a_e_c_p(1) for more information. --CCooPPyy__ffiillee__UUnnddoo The _a_e_g_i_s _-_C_o_p_y___F_i_l_e___U_n_d_o command is used to remove a copy of a file from a change. See _a_e_c_p_u(1) for more information. --DDEELLttaa__NNAAmmee The _a_e_g_i_s _-_D_E_L_t_a___N_A_m_e command is used to add a symbolic name to a project delta. See _a_e_d_n(1) for more information. --DDeevveelloopp__BBeeggiinn The _a_e_g_i_s _-_D_e_v_e_l_o_p___B_e_g_i_n command is used to begin development of a change. See _a_e_d_b(1) for more information. --DDeevveelloopp__BBeeggiinn__UUnnddoo The _a_e_g_i_s _-_D_e_v_e_l_o_p___B_e_g_i_n___U_n_d_o command is used to cease development of a change. See _a_e_d_b_u(1) for more information. --DDeevveelloopp__EEnndd The _a_e_g_i_s _-_D_e_v_e_l_o_p___E_n_d command is used to complete development of a change. See _a_e_d_e(1) for more information. --DDeevveelloopp__EEnndd__UUnnddoo The _a_e_g_i_s _-_D_e_v_e_l_o_p___E_n_d___U_n_d_o command is used to recall a change for further development. See _a_e_d_e_u(1) for more information. --DDIIFFFFeerreennccee The _a_e_g_i_s _-_D_I_F_F_e_r_e_n_c_e command is used to find differences between development directory and baseline. See _a_e_d(1) for more information. --HHeellpp This option may be used to obtain more information about how to use the _a_e_g_i_s program. --IInntteeggrraattee__BBeeggiinn The _a_e_g_i_s _-_I_n_t_e_g_r_a_t_e___B_e_g_i_n command is used to begin integrating a change. See _a_e_i_b(1) for more information. --IInntteeggrraattee__BBeeggiinn__UUnnddoo The _a_e_g_i_s _-_I_n_t_e_g_r_a_t_e___B_e_g_i_n___U_n_d_o command is used to cease integrating a change. See _a_e_i_b_u(1) for more information. --IInntteeggrraattee__FFaaiill The _a_e_g_i_s _-_I_n_t_e_g_r_a_t_e___F_a_i_l command is used to fail a change integration. See _a_e_i_f_a_i_l(1) for more information. --IInntteeggrraattee__PPaassss The _a_e_g_i_s _-_I_n_t_e_g_r_a_t_e___P_A_S_S command is used to pass a change integration. See _a_e_i_p_a_s_s(1) for more information. --LLiisstt The _a_e_g_i_s _-_L_i_s_t command is used to list interesting things. See _a_e_l(1) for more information. --MMooVVee__ffiillee The _a_e_g_i_s _-_M_o_V_e___f_i_l_e command is used to change the name of a file as part of a change. See _a_e_m_v(1) for more information. --NNeeww__AAddmmiinniissttrraattoorr The _a_e_g_i_s _-_N_e_w___A_d_m_i_n_i_s_t_r_a_t_o_r command is used to add new administrators to a project. See _a_e_n_a(1) for more information. --NNeeww__BBRRaanncchh The _a_e_g_i_s _-_N_e_w___B_R_a_n_c_h command is used to add a new branch to a project. See _a_e_n_b_r(1) for more information. --NNeeww__BBRRaanncchh__UUnnddoo The _a_e_g_i_s _-_N_e_w___B_R_a_n_c_h___U_n_d_o command is used to remove a new branch from a project. See _a_e_n_b_r_u(1) for more information. --NNeeww__CChhaannggee The _a_e_g_i_s _-_N_e_w___C_h_a_n_g_e command is used to add a new change to a project. See _a_e_n_c(1) for more information. --NNeeww__CChhaannggee__UUnnddoo The _a_e_g_i_s _-_N_e_w___C_h_a_n_g_e___U_n_d_o command is used to remove a new change from a project. See _a_e_n_c_u(1) for more information. --NNeeww__DDeevveellooppeerr The _a_e_g_i_s _-_N_e_w___D_e_v_e_l_o_p_e_r command is used to add new developers to a project. See _a_e_n_d(1) for more information. --NNeeww__FFiillee The _a_e_g_i_s _-_N_e_w___F_i_l_e command is used to add new files to a change. See _a_e_n_f(1) for more information. --NNeeww__FFiillee__UUnnddoo The _a_e_g_i_s _-_N_e_w___F_i_l_e___U_n_d_o command is used to remove new files from a change. See _a_e_n_f_u(1) for more information. --NNeeww__IInntteeggrraattoorr The _a_e_g_i_s _-_N_e_w___I_n_t_e_g_r_a_t_o_r command is used to add new integrators to a project. See _a_e_n_i(1) for more information. --NNeeww__PPrroojjeecctt The _a_e_g_i_s _-_N_e_w___P_r_o_j_e_c_t command is used to create a new project to be watched over by aegis. See _a_e_n_p_r(1) for more information. --NNeeww__PPrroojjeecctt__AAlliiaass The _a_e_g_i_s _-_N_e_w___P_r_o_j_e_c_t___A_l_i_a_s command is used to create a new project alias. See _a_e_n_p_a(1) for more information. --NNeeww__RReeLLeeaaSSee The _a_e_g_i_s _-_N_e_w___R_e_L_e_a_S_e command is used to create a new project from an existing project. See _a_e_n_r_l_s(1) for more information. --NNeeww__RReeVViieewweerr The _a_e_g_i_s _-_N_e_w___R_e_V_i_e_w_e_r command is used to add new reviewers to a project. See _a_e_n_r_v(1) for more information. --NNeeww__TTeesstt The _a_e_g_i_s _-_N_e_w___T_e_s_t command is used to add a new test to a change. See _a_e_n_t(1) for more information. --NNeeww__TTeesstt__UUnnddoo The _a_e_g_i_s _-_N_e_w___T_e_s_t___U_n_d_o command is used to remove new tests from a change. See _a_e_n_t_u(1) for more information. --PPrroojjeecctt__AAttttrriibbuutteess The _a_e_g_i_s _-_P_r_o_j_e_c_t___A_t_t_r_i_b_u_t_e_s command is used to modify the attributes of a project. See _a_e_p_a(1) for more information. --RReemmoovvee__AAddmmiinniissttrraattoorr The _a_e_g_i_s _-_R_e_m_o_v_e___A_d_m_i_n_i_s_t_r_a_t_o_r command is used to remove administrators from a project. See _a_e_r_a(1) for more information. --RReemmoovvee__DDeevveellooppeerr The _a_e_g_i_s _-_R_e_m_o_v_e___D_e_v_e_l_o_p_e_r command is used to remove developers from a project. See _a_e_r_d(1) for more information. --RReeMMoovvee__ffiillee The _a_e_g_i_s _-_R_e_M_o_v_e___f_i_l_e command is used to add files to be deleted to a change. See _a_e_r_m(1) for more information. --RReeMMoovvee__ffiillee__UUnnddoo The _a_e_g_i_s _-_R_e_m_o_v_e___F_i_l_e___U_n_d_o command is used to remove files to be deleted from a change. See _a_e_r_m_u(1) for more information. --RReemmoovvee__IInntteeggrraattoorr The _a_e_g_i_s _-_R_e_m_o_v_e___I_n_t_e_g_r_a_t_o_r command is used to remove integrators from a project. See _a_e_r_i(1) for more information. --RReeMMoovvee__PPRRoojjeecctt The _a_e_g_i_s _-_R_e_M_o_v_e___P_R_o_j_e_c_t command is used to remove a project. See _a_e_r_m_p_r(1) for more information. --RReemmoovvee__PPrroojjeecctt__AAlliiaass The _a_e_g_i_s _-_R_e_m_o_v_e___P_r_o_j_e_c_t___A_l_i_a_s command is used to remove a project alias. See _a_e_r_p_a(1) for more information. --RReemmoovvee__RReeVViieewweerr The _a_e_g_i_s _-_R_e_m_o_v_e___R_e_V_i_e_w_e_r command is used to remove reviewers from a project. See _a_e_r_r_v(1) for more information. --RReePPoorrTT The _a_e_g_i_s _-_R_e_P_o_r_t command is used to generate reports from aegis' database. These reports may be written by users, or be distributed with aegis. --RReevviieeww__FFaaiill The _a_e_g_i_s _-_R_e_v_i_e_w___F_a_i_l command is used to fail a change review. See _a_e_r_f_a_i_l(1) for more information. --RReevviieeww__BBeeggiinn The _a_e_g_i_s _-_R_e_v_i_e_w___B_e_g_i_n command is used to begin to review a change. See _a_e_r_b(1) for more information. --RReevviieeww__BBeeggiinn__UUnnddoo The _a_e_g_i_s _-_R_e_v_i_e_w___B_e_g_i_n___U_n_d_o command is used to stop reviewing a change. See _a_e_r_b_u(1) for more information. --RReevviieeww__PPaassss The _a_e_g_i_s _-_R_e_v_i_e_w___P_A_S_S command is used to pass a change review. See _a_e_r_p_a_s_s(1) for more information. --RReevviieeww__PPaassss__UUnnddoo The _a_e_g_i_s _-_R_e_v_i_e_w___P_a_s_s___U_n_d_o command is used to rescind a change review pass. See _a_e_r_p_u(1) for more information. --TTeesstt The _a_e_g_i_s _-_T_e_s_t command is used to run tests. See _a_e_t(1) for more information. --VVEERRSSiioonn The _a_e_g_i_s _-_V_E_R_S_i_o_n command is used to get copyright and version details. See _a_e_v(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. OOPPTTIIOONNSS The following options are available to all functions. These options may appear anywhere on the command line following the function selectors. --LLIIBBrraarryy _a_b_s_p_a_t_h This option may be used to specify a directory to be searched for global state files and user state files. (See _a_e_g_s_t_a_t_e(5) and _a_e_u_s_t_a_t_e(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 _A_E_G_I_S___P_A_T_H environment variable (colon separated), and finally, _/_u_s_r_/_l_o_c_a_l_/_l_i_b_/_a_e_g_i_s is always searched. All paths specified, either on the command line or in the _A_E_G_I_S___P_A_T_H environment variable, must be absolute. --PPAAGGeerr The output of listings and help is piped through the pager command given in the PAGER environment variable (or _m_o_r_e 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 _a_e_u_c_o_n_f(5) file. --NNoo__PPAAGGeerr This 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 _a_e_u_c_o_n_f(5) file. --PPaaggee__LLeennggtthh _n_u_m_b_e_r This option may be used to set the page length of listings. The default, in order of preference, is obtained from the system, from the _L_I_N_E_S environment variable, or set to 24 lines. --PPaaggee__WWiiddtthh _n_u_m_b_e_r This 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 _C_O_L_S environment variable, or set to 79 characters. --VVeerrbboossee This option may be used to cause aegis to produce more output. By default aegis only produces output on errors. When used with the --LLiisstt option this option causes column headings to be added. The following options are available to all listings. These options may appear anywhere on the command line following the function selectors. --TTEERRssee This option may be used to cause listings to produce the bare minimum of information. It is usually useful for shell scripts. --UUNNFFoorrmmaatttteedd This option may be used with most listings to specify that the column formatting is not to be performed. This is useful for shell scripts. The following options are available to _m_o_s_t functions. These options may appear anywhere on the command line following the function selectors. --CChhaannggee _n_u_m_b_e_r This option may be used to specify a particular change within a project. When no --CChhaannggee option is specified, the _A_E_G_I_S___C_H_A_N_G_E environment variable is consulted. If that does not exist, the user's _$_H_O_M_E_/_._a_e_g_i_s_r_c file is examined for a default change field (see _a_e_u_c_o_n_f(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. --PPrroojjeecctt _n_a_m_e This option may be used to select the project of interest. When no --PPrroojjeecctt option is specified, the _A_E_G_I_S___P_R_O_J_E_C_T environment variable is consulted. If that does not exist, the user's _$_H_O_M_E_/_._a_e_g_i_s_r_c file is examined for a default project field (see _a_e_u_c_o_n_f(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. 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 --PPrroojjeecctt 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 _a_e_g_i_s are long, this means ignoring the extra leading '-'. The "----_o_p_t_i_o_n==_v_a_l_u_e" convention is also understood. EEXXIITT SSTTAATTUUSS The _a_e_g_i_s command will exit with a status of 1 on any error. The _a_e_g_i_s command will only exit with a status of 0 if there are no errors. EENNVVIIRROONNMMEENNTT VVAARRIIAABBLLEESS The _a_e_g_i_s command understands the following environment variables: AEGIS_PATH A colon-separated list of library directories. See the --LLIIBBrraarryy option for a description how this environment variable is used. AEGIS_PROJECT Names a default project. See the --PPrroojjeecctt option for a description how this environment variable is used. AEGIS_CHANGE Specifies a default change. See the --CChhaannggee option for a description how this environment variable is used. AEGIS_FLAGS This environment variable is used to hold _a_e_u_c_o_n_f(5) information, and over-rides the settings in the users _._a_e_g_i_s_r_c file. This is intended to be used within the tests distributed with aegis, but can also be of use within some shell scripts. AEGIS_THROTTLE Specifies the number of seconds to delay execution within commands which set timestamps. This is intended to be used within the tests distributed with aegis, but can also be of use within some shell scripts. AEGIS_AUTOMOUNT_POINTS 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. COLS Specifies the page width for errors and listings. See the --PPaaggee__WWiiddtthh option for a description how this environment variable is used. EDITOR Specifies the program use to edit files when the --EEddiitt or --EEddiitt__BBaacckkGGrroouunndd options are used. (See also the _V_I_S_U_A_L environment variable.) Defaults to _v_i if not set. LINES Specifies the page length for listings. See the --PPaaggee__LLeennggtthh option for a description how this environment variable is used. PAGER Specifies the program to use to view listings and help. Not used if output is to a file or a pipe. Defaults to _m_o_r_e if not set. VISUAL Specifies the program use to edit files when the --EEddiitt option is used. (See also the _E_D_I_T_O_R environment variable.) Defaults to _v_i if not set. SSEEEE AALLSSOO _a_e_g_i_s(5) aegis file format syntax _a_e_c_a_t_t_r(5) change attributes file format _a_e_c_s_t_a_t_e(5) change state file format _a_e_d_i_r(5) directory structures _a_e_g_s_t_a_t_e(5) aegis state file format _a_e_p_a_t_t_r(5) project attributes file format _a_e_p_c_o_n_f(5) project configuration file format _a_e_p_s_t_a_t_e(5) project state file format _a_e_r(5) report script language definition _a_e_s_u_b(5) available command substitutions _a_e_u_c_o_n_f(5) user configuration file format _a_e_u_s_t_a_t_e(5) user state file format CCOOPPYYRRIIGGHHTT aegis version .C001 Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 Peter Miller; All rights reserved. The aegis program comes with ABSOLUTELY NO WARRANTY; for details use the '_a_e_g_i_s _-_V_E_R_S_i_o_n _L_i_c_e_n_s_e' command. This is free software and you are welcome to redistribute it under certain conditions; for details use the '_a_e_g_i_s _-_V_E_R_S_i_o_n _L_i_c_e_n_s_e' command. AAUUTTHHOORR Peter Miller E-Mail: millerp@canb.auug.org.au /\/\* WWW: http://www.canb.auug.org.au/~millerp/ Reference Manual Aegis 1