Provided by: aegis_4.24.3-3_amd64 

NAME
aegis integrate begin - begin integrating a change
SYNOPSIS
aegis -Integrate_Begin change-number [ option... ]
aegis -Integrate_Begin -List [ option... ]
aegis -Integrate_Begin -Help
DESCRIPTION
The aegis -Integrate_Begin command is used to begin the integration of a change into the baseline of a
project.
The change will advance from the awaiting integration state to the being integrated state.
┌─────────┐
│awaiting │
--
Minimum Integrations
Aegis provides a minimum integration capability which may be used for various reasons. The term minimum
may be a bit counter intuitive. One might think it means to the minimum amount of work, however it
actually means use a minimum of files from the baseline in populating the delta directory. This
normally leads to actually building everything in the project from sources and, as such, might be
considered the most robust of builds.
Note that any change which removes a file, whether by aerm, aemv or aemt, results in an implicit minimum
integration. This is intended to ensure nothing in the project references the removed file.
A project may adopt a policy that a product release should be based on a minimum integration. Such a
policy may be a reflection of local confidence, or lack thereof, in the project's DMT (Dependency
Maintenance Tool) or build system. Or it may be based on a validation process wishing to make a simple
statement on how the released package was produced.
Another, more transient, reason a to require a minimum integration might be when upgrading a third party
library, compiler or maybe even OS level. Any of these events would signal the need for a minimum
integration to ensure everything is rebuilt using the new resources.
The cost of a minimum integration varies according to type and size of the project. For very large
projects, especially those building large numbers of binaries, the cost can be large. However large
projects also require significant time to fully populate the delta directory. A minimum integration
only copies those files under Aegis control, skipping all “produced” files. In the case where a file
upon which everything depends is changed, everything will be built anyway so the copy of the already
built files is a waste of time. This means that sometimes a minimum can be as cheap as a normal
integration.
Change Set Attributes
The follwoing user-defined change set attributes are understood:
integrate-begin-hint
If this is set to "minimum" or "maximum", it is as if these options appeared on the command
line. Only consulted if neither -minimum nor -maximum appear on the command line.
All other user defined change set attributes are ignored.
OPTIONS
The following options are understood:
-Change number
This option may be used to specify a particular change within a project. See aegis(1) for a
complete description of this option.
-Help
This option may be used to obtain more information about how to use the aegis program.
-List
This option may be used to obtain a list of suitable subjects for this command. The list may be
more general than expected.
-MAXimum
This option may be used to cause all files to be copied into the integration directory. This is
the default, unless the change requires the deletion of a file.
-MINImum
This option may be used to cause only the source files to be copied into the integration
directory. The default is to copy all files, unless the change requires the deletion of a file.
-Project name
This 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.
-REAson text
This option may be used to attach a comment to the change history generated by this command.
You will need to use quotes to insulate the spaces from the shell.
-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.
-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.
RECOMMENDED ALIAS
The recommended alias for this command is
csh% alias aeib 'aegis -ib \!* -v'
sh$ aeib(){aegis -ib "$@" -v}
ERRORS
It is an error if the change is not in the awaiting integration state.
It is an error if the current user is not an integrator of the project.
It is an error if there is an integration in progress for the project.
It is an error if the current user developed the change and the project is configured to disallow
developers to integrate their own changes (default).
It is an error if the current user reviewed the change and the project is configured to disallow
reviewers to integrate their such changes (default).
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
aeb(1) build a change
aecd(1) change directory
aeibu(1)
reverse the aeib command
aeifail(1)
fail integration of a change
aeintegratq(1)
Automate the integration queue.
aeipass(1)
pass integration of a change
aeni(1) add new integrators to a project
aerpass(1)
pass review of a change
aet(1) run tests
aeuconf(5)
user configuration file format
COPYRIGHT
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/
Reference Manual Aegis aegis -Integrate_Begin(1)