aegis -New_PRoject(1) General Commands Manual aegis -New_PRoject(1) NNAAMMEE aegis new project - create a new project SSYYNNOOPPSSIISS aaeeggiiss --NNeeww__PPRRoojjeecctt _p_r_o_j_e_c_t_-_n_a_m_e [ _o_p_t_i_o_n... ] aaeeggiiss --NNeeww__PPRRoojjeecctt --LLiisstt [ _o_p_t_i_o_n... ] aaeeggiiss --NNeeww__PPRRoojjeecctt --HHeellpp DDEESSCCRRIIPPTTIIOONN The _a_e_g_i_s _-_N_e_w___P_R_o_j_e_c_t command is used to create a new project. The project is created as an empty directory structure with no staff except the administrator, no changes, and branches to implement the version specified. Please note: unless you specify a version (see the --vveerrssiioonn option, below) this command will default to creating branches to support ver- sion 1.0. If you discovered this too late, all is not lost: you can use the _a_e_n_b_r_u(1) command to get rid of the branches you didn't want. DDiirreeccttoorryy The project directory, under which the project baseline and history and state and change data are kept, will be created at this time. If the --DDIIRReeccttoorryy option is not given, the project directory will be cre- ated in the directory specified by the default_project_directory field of _a_e_u_c_o_n_f(5), or if not set in current user's home directory; in either case with the same name as the project. SSttaaffff The project is created with the current user and group as the owning user and group. The current user is an administrator for the project. The project has no developers, reviewers, integrators or other admin- istrators. The project's umask is derived from the current user's umask, but guaranteeing that group members will have access and that only the project owner will have write access. PPooiinntteerr The project pointer will be added to the first element of the search path, or _/_u_s_r_/_l_o_c_a_l_/_c_o_m_/_a_e_g_i_s if no path is set. If this is inappro- priate, use the --LLIIBBrraarryy option to explicitly set the desired loca- tion. See the --LLIIBBrraarryy option for more information. VVeerrssiioonn You may specify the project version in two ways: 1. The version number may be implicit in the project name, in which case the version numbers will be stripped off. For example, "aenpr example.1.2" will create a project called "example" with branch number 1 created, and sub-branch 2 of branch 1 created. 2. The version number may be stated explicitly, in which case it will be subdivided for branch numbers. For example, "aenpr example -version 1.2" will create a project called "example" with branch number 1 created, and sub-branch 2 of branch 1 created. In each case, these branches may be named wherever a project name may be given, such as "-p example.1" and "-p example-1.2". The actual punctuation character is unimportant. You may have any depth of version numbers you like. Both methods of specifying version numbers may be used, and they will be combined. If you want no version numbers at all, use --vveerrssiioonn with a single dash as the argument, as in "-version -" If no version number is given, either explicitly or implicitly, ver- sion 1.0 is used. PPrroojjeecctt DDiirreeccttoorryy LLooccaattiioonn PPlleeaassee NNoottee:: Aegis also consults the underlying file system, to deter- mine its notion of maximum file size. Where the file system's maximum file size is less than _m_a_x_i_m_u_m___f_i_l_e_n_a_m_e___l_e_n_g_t_h, the filesystem wins. This can happen, for example, when you are using the Linux UMSDOS file system, or when you have an NFS mounted an ancient V7 filesystem. Setting _m_a_x_i_m_u_m___f_i_l_e_n_a_m_e___l_e_n_g_t_h to 255 in these cases does not alter the fact that the underlying file systems limits are far smaller (12 and 14, respectively). If your development directories (or your whole project) is on filesys- tems with filename limitations, or a portion of the heterogeneous builds take place in such an environment, it helps to tell Aegis what they are (using the project _c_o_n_f_i_g file's fields) so that you don't run into the situation where the project builds on the more permissive environments, but fails with mysterious errors in the more limited environments. If your development directories are routinely on a Linux UMSDOS filesystem, you would probably be better off setting _d_o_s___f_i_l_e_- _n_a_m_e___r_e_q_u_i_r_e_d _= _t_r_u_e, and also changing the _d_e_v_e_l_o_p_m_e_n_t___d_i_r_e_c_t_o_r_y___t_e_m_- _p_l_a_t_e field. Heterogeneous development with various Windows environ- ments may also require this. OOPPTTIIOONNSS The following options are understood: --DDIIRReeccttoorryy _p_a_t_h This option may be used to specify which directory is to be used. It is an error if the current user does not have appro- priate permissions to create the directory path given. This must be an absolute path. Caution: If you are using an automounter do not use `pwd` to make an absolute path, it usually gives the wrong answer. --EEddiitt Edit the attributes with a text editor, this is usually more convenient than supplying a text file. The _V_I_S_U_A_L and then _E_D_I_T_O_R environment variables are consulted for the name of the editor to use; defaults to _v_i(1) if neither is set. See the _v_i_s_u_a_l___c_o_m_m_a_n_d and _e_d_i_t_o_r___c_o_m_m_a_n_d fields in _a_e_u_c_o_n_f(1) for how to override this specifically for Aegis. Warning: Aegis tries to be well behaved when faced with errors, so the temporary file is left in your home directory where you can edit it further and re-use it with a --ffiillee option. The --eeddiitt option may not be used in the background, or when the standard input is not a terminal. --EEddiitt__BBaacckkGGrroouunndd Edit the attributes with a dumb text editor, this is most often desired when edit commands are being piped into the edi- tor via the standard input. Only the EEDDIITTOORR environment vari- able is consulted for the name of the editor to use; it is a fatal error if it is not set. See the _e_d_i_t_o_r___c_o_m_m_a_n_d field in _a_e_u_c_o_n_f(1) for how to override this specifically for Aegis. --FFiillee _f_i_l_e_n_a_m_e Take the attributes from the specified file. The filename `-' is understood to mean the standard input. --HHeellpp This option may be used to obtain more information about how to use the _a_e_g_i_s program. --KKeeeepp This option may be used to re-attach a project detached using _a_e_r_m_p_r _-_k_e_e_p and possibly moved by the system administrator. --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 vari- able (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 abso- lute. --LLiisstt This option may be used to obtain a list of suitable subjects for this command. The list may be more general than expected. --TTEERRssee This option may be used to cause listings to produce the bare minimum of information. It is usually useful for shell scripts. --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. --VVEERRSSiioonn _n_u_m_b_e_r This option may be used to specify the version number for the project. Version numbers are implemented as branches. Use a single dash ("-") as the argument if you want no version branches created. --WWaaiitt This option may be used to require Aegis commands to wait for access locks, if they cannot be obtained immediately. Defaults to the user's _l_o_c_k___w_a_i_t___p_r_e_f_e_r_e_n_c_e if not specified, see _a_e_u_c_o_n_f(5) for more information. --NNoo__WWaaiitt This option may be used to require Aegis commands to emit a fatal error if access locks cannot be obtained immediately. Defaults to the user's _l_o_c_k___w_a_i_t___p_r_e_f_e_r_e_n_c_e if not specified, see _a_e_u_c_o_n_f(5) for more information. See also _a_e_g_i_s(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 inter- preted 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. RREECCOOMMMMEENNDDEEDD AALLIIAASS The recommended alias for this command is csh% alias aenpr 'aegis -npr \!* -v' sh$ aenpr(){aegis -npr "$@" -v} EERRRROORRSS It is an error if the project name already exists. It is an error if the project directory already exists. It is an error if the current user does not have sufficient permis- sions to create the directory specified with the --DDIIRReeccttoorryy option. 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 See _a_e_g_i_s(1) for a list of environment variables which may affect this command. See _a_e_p_c_o_n_f(5) for the project configuration file's _p_r_o_j_e_c_t___s_p_e_c_i_f_i_c field for how to set environment variables for all commands executed by Aegis. SSEEEE AALLSSOO _a_e_n_a(1) add a new administrator to a project _a_e_n_b_r_u(1) Remove a new branch. This can often be useful if _a_e_n_p_r(1) created some default branches for you, and now you want to get rid of them. _a_e_n_c(1) add a new change to a project _a_e_n_d(1) add a new developer to a project _a_e_n_r_l_s(1) create a new project from an existing project _a_e_n_r_v(1) add a new reviewer to a project _a_e_r_m_p_r(1) remove project _a_e_u_c_o_n_f(5) user configuration file format CCOOPPYYRRIIGGHHTT aegis version 4.25.D611 Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Peter Miller 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: pmiller@opensource.org.au /\/\* WWW: http://miller.emu.id.au/pmiller/ Reference Manual Aegis aegis -New_PRoject(1)