将差异文件应用于原始文件。需要 patch 命令在执行路径上。
属性 | 描述 | 必需 |
---|---|---|
patchfile | 包含差异输出的文件 | 是 |
originalfile | 要打补丁的文件 | 否;尝试从差异文件中猜测文件名 |
destfile | 将输出发送到的文件,而不是就地修补文件。自 Apache Ant 1.6 起 | 否 |
backups | 保留未打补丁文件的备份 | 否 |
quiet | 除非发生错误,否则静默运行 | 否 |
reverse | 假设补丁是使用交换后的旧文件和新文件创建的。 | 否 |
ignorewhitespace | 忽略空白差异。 | 否 |
strip | 从文件名中剥离包含 num个前导斜杠的最短前缀。 |
否 |
dir | 运行 patch 命令的目录。 |
否;默认值为项目的 basedir |
failonerror | 如果命令以返回代码退出,表示失败,则停止构建过程。自 Ant 1.8.0 起 | 否;默认为 false |
将包含在 module.1.0-1.1.patch 中的差异应用于基目录中的文件,从差异输出中猜测文件名。
<patch patchfile="module.1.0-1.1.patch"/>
这里,将删除一个前导目录部分
<patch patchfile="module.1.0-1.1.patch" strip="1"/>
例如,如果差异输出看起来像
--- a/mod1.0/A Mon Jun 5 17:28:41 2000 +++ a/mod1.1/A Mon Jun 5 17:28:49 2000
则将剥离前导 a/。