xenial (1) aenpr.1.gz

Provided by: aegis_4.24.3-3_amd64 bug

NAME

        aegis new project - create a new project

SYNOPSIS

        aegis -New_PRoject project-name [ option...  ]
        aegis -New_PRoject -List [ option...  ]
        aegis -New_PRoject -Help

DESCRIPTION

        The aegis -New_PRoject 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 -version option, below) this command will default to
        creating branches to support version 1.0.  If you discovered this too late, all is not lost: you can use
        the aenbru(1) command to get rid of the branches you didn't want.

   Directory
        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 -DIRectory option is not given, the project directory will be
        created in the directory specified by the default_project_directory field of aeuconf(5), or if not set
        in current user's home directory; in either case with the same name as the project.

   Staff
        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
        administrators.  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.

   Pointer
        The project pointer will be added to the first element of the search path, or /var/lib/aegis if no path
        is set.  If this is inappropriate, use the -LIBrary option to explicitly set the desired location.  See
        the -LIBrary option for more information.

   Version
        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 -version with a single dash
        as the argument, as in “-version -”

        If no version number is given, either explicitly or implicitly, version 1.0 is used.

   Project Directory Location
        Please Note: Aegis also consults the underlying file system, to determine its notion of maximum file
        size.  Where the file system's maximum file size is less than maximum_filename_length, 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 maximum_filename_length 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 filesystems 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 config 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 dos_filename_required = true, and also changing the development_directory_template field.
        Heterogeneous development with various Windows environments may also require this.

OPTIONS

        The following options are understood:

        -DIRectory path
                This option may be used to specify which directory is to be used.  It is an error if the current
                user does not have appropriate 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.

        -Edit
                Edit the attributes with a text editor, this is usually more convenient than supplying a text
                file.  The VISUAL and then EDITOR environment variables are consulted for the name of the editor
                to use; defaults to vi(1) if neither is set.  See the visual_command and editor_command fields
                in aeuconf(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 -file option.

                The -edit option may not be used in the background, or when the standard input is not a
                terminal.

        -Edit_BackGround
                Edit the attributes with a dumb text editor, this is most often desired when edit commands are
                being piped into the editor via the standard input.  Only the EDITOR environment variable is
                consulted for the name of the editor to use; it is a fatal error if it is not set.  See the
                editor_command field in aeuconf(1) for how to override this specifically for Aegis.

        -File filename
                Take the attributes from the specified file.  The filename `-' is understood to mean the
                standard input.

        -Help
                This option may be used to obtain more information about how to use the aegis program.

        -Keep   This option may be used to re-attach a project detached using aermpr -keep and possibly moved by
                the system administrator.

        -LIBrary abspath
                This 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.

        -List
                This option may be used to obtain a list of suitable subjects for this command.  The list may be
                more general than expected.

        -TERse
                This option may be used to cause listings to produce the bare minimum of information.  It is
                usually useful for shell scripts.

        -Verbose
                This 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.

        -VERSion number
                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.

        -Wait   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 lock_wait_preference if not specified, see
                aeuconf(5) for more information.

        -No_Wait
                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 lock_wait_preference if not specified, see
                aeuconf(5) for more information.

        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 recommended alias for this command is
        csh%    alias aenpr 'aegis -npr \!* -v'
        sh$     aenpr(){aegis -npr "$@" -v}

ERRORS

        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 permissions to create the directory
        specified with the -DIRectory option.

EXIT STATUS

        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.

ENVIRONMENT VARIABLES

        See aegis(1) for a list of environment variables which may affect this command.  See aepconf(5) for the
        project configuration file's project_specific field for how to set environment variables for all
        commands executed by Aegis.

SEE ALSO

        aena(1) add a new administrator to a project

        aenbru(1)
                Remove a new branch.  This can often be useful if aenpr(1) created some default branches for
                you, and now you want to get rid of them.

        aenc(1) add a new change to a project

        aend(1) add a new developer to a project

        aenrls(1)
                create a new project from an existing project

        aenrv(1)
                add a new reviewer to a project

        aermpr(1)
                remove project

        aeuconf(5)
                user configuration file format

        aegis version 4.24.3.D001
        Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
        2006, 2007, 2008, 2009, 2010 Peter Miller

        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 Miller   E-Mail:   millerp@canb.auug.org.au
        /\/\*             WWW:   http://www.canb.auug.org.au/~millerp/