Domanda

Sto usando Ant 1.7.1 per recuperare il contenuto di una directory, che contiene una sottodirectory .git. Il mio compito attuale è

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

Ma il tarball risultante contiene la sottodirectory .git. Qualcuno potrebbe indicare come ho potuto impedire che fosse incluso?

È stato utile?

Soluzione

Funziona:

<?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>

I tuoi pattern erano sbagliati, per maggiori informazioni sui pattern leggi qui: http: // ant.apache.org/manual/dirtasks.html#patterns

Altri suggerimenti

Ant ha predefinito preconfigurato esclude che impedisce le attività basate su directory dall'elaborazione di file di controllo per CVS, Subversion e VSS. Sfortunatamente, queste impostazioni predefinite non coprono nessun altro sistema di controllo della versione. Tuttavia, puoi modificare le impostazioni predefinite usando < defaultexcludes > compito :

<defaultexcludes add="**/.git/**,**/.gitignore"/>

Ciò escluderà i tuoi file Git da qualsiasi elaborazione successiva (quindi ogni uso successivo di < tar > ;, < javac > ;, < jar > o simili ignorerà i file di controllo).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top