SYNOPSIS
aegis -File_ATtributes -File attr-file [ option... ] filenameaegis -File_ATtributes -Edit [ option... ] filename
aegis -File_ATtributes [ option... ] name=value filename
aegis -File_ATtributes -UUID number -File filename
aegis -File_ATtributes -Help
DESCRIPTION
The aegis -File_ATtributes command is used to set, edit or list the attributes of a file.The output of the -List variant is suitable for use as input at a later time.
See aefattr(5) for a description of the file format.
Attribute names are not case sensitive. File attributes with a name starting with an upper case letter will appear in ael(1) and aeget(1) listings, while those starting with a lower case letter will not.
Shorthand
If you are only setting the values of unique attributes, it is possible to do this from the command line, using the name=value form.Note that this usage will replace the first attribute with the given name. If there is more than one attribute of that name, the second and subsequent attributes are unchanged. If there is no attribute of the given name, it will be appended.
You may set more than one attribute at a time, provided that their names are unique. Attribute names are not case sensitive.
Known Attribute Names
While many of the anticipated uses of file attributes are to allow projects to attach their own specialized data to individual files, Aegis also uses some attributes for its own purposes (and arguably, should always have done so to maximize forwards compatibility across Aegis upgrades).- content-type
- This is taken directly from the MIME definition of Content-Type. It remembers what sort of file this is. It is anticipated that a diff tool, for example, could make use of this attribute to provide format-specific file difference listings. Some change set interchange formats are capable of carrying this information.
- entire-source-hide
- boolean. If true, this file is not included by the aedist -entire-source flag. The aetar and aerevml commands work similarly. Think of it as a "local only" flag.
- foreign-copyright
- boolean. If true, this file will not be checked by the aede-policy(1) copyright validation.
- aede-policy-tabs-allowed
- boolean. If true, the no-tabs policy of the aede-policy(1) command does not apply.
- aede-policy-line-length
- integer. The maximum allowed line length in the line-length policy of the aede-policy(1) command; infinity if 0.
- local-source-hide
- boolean. If true, this file is not included by aedist change sets. The aetar and aerevml commands work similarly. Change sets which contain only thee files will be omitted from the aedist -inventory output. Think of it as a "local only" flag.
- aeipass-options:assign-file-uuid
- boolean. If false, aeipass will not assign a fresh UUID to this file. This flag is set by aedist -rec if the action associated with the file is a create and the file is missing the UUID. This behaviour is needed to prevent the effect of having different UUIDs assigned to the same file in different repositories.
OPTIONS
The following options are understood:- -BAse_RElative
- This option may be used to cause relative filenames to be considered relative to the base of the source tree. See aeuconf(5) for the corresponding user preference.
- -CUrrent_RElative
- This option may be used to cause relative filenames to be considered relative to the current directory. This is usually the default. See aeuconf(5) for the corresponding user preference.
- -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. - -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.
- -TERse
-
This option may be used to cause listings to produce the bare minimum of information. It is usually useful for shell scripts. -Universal_Unique_IDentifier number This option may be used to set the UUID of a file. - -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 iscsh% alias aefa 'aegis -fat \!* -v' sh$ aefa(){aegis -fat "$@" -v}
ERRORS
It is an error if the current user is not an administrator of the specified project.It is an error if the current user is not the developer of the specified change.
It is an error if the file is not included in the specified change.
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.COPYRIGHT
aegis version 4.24.3.D001Copyright (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.