这是命令 aerm,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
aegis 删除文件 - 将要删除的文件添加到更改中
概要
庇护 -删除文件 文档名称... [ 选项...]
庇护 -删除文件 -列表 [ 选项...]
庇护 -删除文件 -帮助
商品描述
庇护 -删除文件 命令用于将要删除的文件添加到更改中。 文件
将添加到更改中的文件列表,并将从基线中删除
在集成时。
此命令可用于删除测试,而不仅仅是源文件。 测试只被处理
像任何其他源文件一样,并受制于相同的过程。
将在 development 目录中创建一个包含 1KB 随机文本的文件。 这
随机文本足以令人反感,大多数编译器都会给出错误消息,
如果文件被意外引用。 这在删除时通常非常有用
包含文件。
您可以指定目录名称以删除命名目录树中的所有文件。 这是
如果没有相关文件,则会出错。
文件 名字 解释
aegis 程序将尝试从文件名中确定项目文件名
在命令行中给出。 所有文件名都作为相对文件名存储在 aegis 项目中
到基线目录树的根。 开发目录和
集成目录是这个基线目录的影子,所以这些相对名称
也在这里申请。 命令行中命名的文件首先转换为绝对路径
如有必要。 然后将它们与基线路径、开发目录进行比较
path 和集成目录路径,以确定相对于基线的名称。 这是
如果命名的文件在这些目录树之一之外,则会出现错误。
-BASE_Relative 选项可用于将相对文件名解释为
相对于基线路径; 绝对文件名仍将与各种
路径以确定基线相对名称。
相对文件名首选项 在用户配置文件中可以用来修改
这种默认行为。 看 配置文件(5) 了解更多信息。
工艺 侧 效果
此命令将取消任何构建或测试注册,因为在逻辑上添加文件
使它们无效。
当列出更改文件时 (庇护 -列表 更改文件 -TERse) 删除的文件将
没有出现在简短的列表中。 同样,当项目文件以
显式更改编号 (庇护 -列表 项目_文件 -TERse -改变 N) 没有任何变化
文件,包括删除的文件,将不会出现在简洁列表中。 这两个
当从 DMT 中调用 aegis 以生成列表时,这些功能非常有用
源文件。
改变 此 Type of a 文件
如果你想改变一个文件的类型(比如,从一个测试到一个源文件,或者 副
反之亦然) 你可以把它作为两个变化来做,首先使用 艾尔姆(1) 一改再改
运用 恩夫(1)或 对象(1) 在第二次更改中,或者您可以将两个步骤合并在同一个
改变。 记得使用 艾尔姆 -现在不白了 选项,否则你会得到一个最奇特的新
文件模板。
通知
删除文件命令 在项目中 配置 文件运行,如果设置。 这 项目文件_-
命令 也会运行,如果设置了,并且最近有集成。 看
配置文件(5) 了解更多信息。
白出
Aegis 为您提供了通常称为“视图路径”的东西,它指示开发
工具(编译器、构建系统、 等) 首先查看开发目录,然后查看
分支基线,依此类推直到主干基线。
视图路径的问题在于,为了删除文件,您需要某种
“whiteout”表示“别再看了,它已经被删除了。”
当您使用 艾尔姆(1)或 病毒(1) 命令,这意味着“向此更改添加信息
当集成此更改时,它将从基线中删除文件”。 即 而
变化在于 作为 发达 状态,该文件仅在开发中“删除”
目录 - 它仍然存在于基线中,并且将一直存在,直到更改完成
成功整合。
当您使用 艾尔姆(1)或 病毒(1) 命令,Aegis 将创建一个 1K 文件作为
白化。 它的内容相当丑陋,因此如果您编译或包含“已删除”
文件不小心,你会得到一个致命的错误。 这将提醒您删除过时的
引用。
当集成更改时,删除的文件是 不能 从基线复制/链接到
集成目录,是 不能 从开发目录复制。 在这
时间它已经消失了(没有白屏)。 假设是因为错误
引起白化所有旧的引用都被发现并修复,而变化是在
作为 发达 州。
文件 舱单
在生成要编译或链接的文件列表时,重要的是文件
清单是从 Aegis 已知的信息中生成的,而不是从文件系统中生成的。
这有几个原因:
(a) Aegis 确切地知道哪些(源)文件在哪里,而其他一切都在
推断宙斯盾的知识; 和
(b) 当视图路径长于 2 个目录时,很难查看文件系统
(而且Aegis的分支方法可以让它任意长); 和
(c) whiteout 文件和其他任何“散布”的东西都会混淆任何方法
它询问文件系统。
使用 Aegis 文件知识的最简单方法是使用类似 AWK(1) 脚本
处理 Aegis 文件列表。 例如,您可以使用 使(1) 如下:
# 生成文件清单
manifest.make.inc:manifest.make.awk
(宙斯盾 -l cf -ter ; 宙斯盾 -l pf -ter ) | \
awk -f manifest.make.awk > manifest.make.inc
# 现在包含文件清单
包括 manifest.make.inc
注意:如果您在每个目录中执行一次,这将是低效的,但是什么也没有
阻止您将大量作业写入 清单制作公司 文件,合而为一
通过。
可以用 Aegis 的报告生成器做同样的事情(见 AER(1) 更多
信息),但这比 AWK(1) 脚本。 然而,随着
信息“直接来自马口”,它也可以更聪明。
如果没有与 Aegis 文件的互锁,此文件清单将过期
操作命令。 通过使用 项目文件命令 和 更改文件命令 领域
该项目 配置 文件(见 配置文件(5) 详细信息),可以删除这个文件
在战略时刻。
/* 当更改文件清单被改变时运行 */
change_file_command = "rm -f manifest.make.inc";
/* 当项目文件清单被改变时运行 */
project_file_command = "rm -f manifest.make.inc";
因此,新的文件清单将在下一个 AEB(1) 命令。
附加选项 和 优先
有一个 -无白化 选项,可用于在您使用时抑制 whiteout 文件
此 艾尔姆(1)和 病毒(1) 命令。 有对应的 -WhiteOut 选项,即
通常是默认值。
有一个 白色偏好 用户首选项文件中的字段(请参阅 配置文件(5)
更多信息)如果您想更永久地设置此选项。
WHITEOUT 文件 模板
白色模板 项目领域 配置 文件可用于生成语言-
特定的错误文件。 如果没有 whiteout 模板条目匹配,一个非常丑陋的 1KB 文件将
生成 - 它应该会导致几乎任何语言的编译器错误。
如果您想要更易读的错误消息,请输入诸如
白色模板=
[
{
模式 = [ "*.[ch]" ];
body = "#error 此文件已被删除。";
}
];
可能非常有效(这个例子假设 GCC(1) 正在使用)。
如果有必要 没有 生成 whiteout 文件,例如对于 C 源文件,您可以
使用 whiteout 模板,例如
白色模板=
[
{ 模式 = [“*.c”]; }
];
因为缺席 身体 sub-field 意味着根本不生成 whiteout 文件。
您可能有多个 whiteout 模板条目,但请注意
条目很重要。 将使用匹配的第一个条目。
文件 操作 调整
当此命令运行时,它首先根据项目文件检查更改文件。 如果
有不一致的地方,文件动作会做如下调整:
create 如果正在创建一个文件,但集成了另一个更改集,它也
创建文件,仍在开发的更改集中的文件操作将是
调整为“修改”。
修改 如果正在修改文件,但集成了另一个更改集,该更改集将删除
文件,仍在开发的更改集中的文件操作将是
调整为“创造”。
remove 如果正在删除一个文件,但集成了另一个更改集,该更改集将删除
文件,该文件将从仍在开发的更改集中删除。
配置
理解以下选项:
-BASE_Relative
此选项可用于导致相对文件名被视为相对于
源树的基础。 看 配置文件(5) 对应用户
偏好。
-CUrrent_Relative
此选项可用于导致相对文件名被视为相对于
当前目录。 这通常是默认设置。 看 配置文件(5)
相应的用户偏好。
-改变 数
此选项可用于指定项目中的特定更改。 看
庇护(1) 有关此选项的完整说明。
-帮助
此选项可用于获取有关如何使用 庇护
程序。
-列表
此选项可用于获取此命令的合适主题列表。
该列表可能比预期的更笼统。
-Not_Logging
此选项可用于禁用输出和错误的自动记录到
一份文件。 当多个 aegis 命令组合在一个 shell 中时,这通常很有用
脚本。
-项目 姓名
此选项可用于选择感兴趣的项目。 当没有 -项目
选项被指定, 宙斯盾项目 环境变量被咨询。 如果
不存在的,用户的 $HOME/.aegisrc 检查默认文件
项目字段(见 配置文件(5) 了解更多信息)。 如果那不存在,
当用户只在单个项目中进行更改时,项目
名称默认为该项目。 否则,这是一个错误。
-TERse
此选项可用于使列表产生最少的
信息。 它通常对 shell 脚本很有用。
-详细
此选项可用于使 aegis 产生更多输出。 默认情况下
只产生错误的输出。 当与 -列表 选项这个选项
导致添加列标题。
-等待 此选项可用于要求 Aegis 命令等待访问锁定,如果
它们不能立即获得。 默认为用户的 锁等待偏好
如果未指定,请参阅 配置文件(5) 了解更多信息。
-No_Wait
此选项可用于要求 Aegis 命令在访问时发出致命错误
不能立即获得锁。 默认为用户的
锁等待偏好 如果未指定,请参阅 配置文件(5) 了解更多信息。
-WhiteOut
此选项可用于请求将已删除的文件替换为“whiteout”
开发目录下的文件。 这个想法是编译这样的文件将
导致致命错误,以便可以找到所有引用。 这是
通常是默认值。
-No_WhiteOut
此选项可用于请求不将“whiteout”文件放置在
开发目录。
参见 庇护(1) 对于所有 aegis 命令通用的选项。
所有选项都可以缩写; 缩写记录为大写字母,
所有小写字母和下划线 (_) 都是可选的。 您必须使用连续
可选字母的序列。
所有选项都不区分大小写,您可以将它们输入为大写或小写或
两者结合,大小写并不重要。
例如:参数“-project”、“-PROJ”和“-p”都被解释为表示
-项目 选项。 参数“-prj”不会被理解,因为连续
未提供可选字符。
选项和其他命令行参数可以在命令行上任意混合,
在功能选择器之后。
GNU 长选项名称是可以理解的。 由于所有选项名称为 庇护 很长,
这意味着忽略额外的前导“-”。 这 ”--选项=折扣值"约定也是
明白了。
推荐 别名
此命令的推荐别名是
csh% 别名 aerm 'aegis -rm \!* -v'
sh$ aerm(){aegis -rm "$@" -v}
错误
如果更改不在 作为 发达 州。
如果未将更改分配给当前用户,则会出现错误。
如果该文件不存在于基线中,则这是一个错误。
如果文件已经是更改的一部分,则这是一个错误。
退出 状态
庇护 命令将在出现任何错误时以 1 状态退出。 这 庇护 命令只会
如果没有错误,则退出状态为 0。
环境 变数
我们 庇护(1) 获取可能影响此命令的环境变量列表。 看
配置文件(5)为项目配置文件的 项目特定 字段如何设置
Aegis 执行的所有命令的环境变量。
使用 onworks.net 服务在线使用 aerm