不包括Ant中的.git<;焦油>;任务

不包括Ant中的.git<;焦油>;任务,ant,build,tar,Ant,Build,Tar,我正在使用Ant1.7.1对包含.git子目录的目录的内容进行tar。我目前的任务是 <tar destfile="sali-src-${version}.tgz" basedir="${basedir}" compression="gzip" excludes=".git, .gitignore, *.ipr, *.iws, *.iml"> </tar> 但是结果tarball包含.git子目录。有人能指出我如何防止它被包括在内吗?

我正在使用Ant1.7.1对包含.git子目录的目录的内容进行tar。我目前的任务是

<tar
    destfile="sali-src-${version}.tgz"
    basedir="${basedir}"
    compression="gzip"
    excludes=".git, .gitignore, *.ipr, *.iws, *.iml">
</tar>

但是结果tarball包含.git子目录。有人能指出我如何防止它被包括在内吗?

这是有效的:

<?xml version="1.0"?>
<project name="test" default="tar">
        <target name="tar">
            <tar
                destfile="sali-src-${version}.tgz"
                basedir="${basedir}"
                compression="gzip"
                excludes=".git/**, .gitignore/**, **/*.ipr, **/*.iws, **/*.iml">
            </tar>
        </target>
</project>

您的模式是错误的,有关模式的更多信息,请阅读此处:

Ant具有阻止基于目录的任务处理CVS、Subversion和VSS控制文件的功能。不幸的是,这些默认值不包括任何其他版本控制系统。但是,可以使用以下命令修改默认值:



这将从任何后续处理中排除Git文件(因此每次后续使用或类似操作都将忽略控制文件)。

注意,Ant 1.8.2为Git和Mercurial添加了默认排除。
<defaultexcludes add="**/.git/**,**/.gitignore"/>