Pergunta

Eu estou usando Ant 1.7.1 tar-se o conteúdo de um diretório, que contém um subdiretório .git. Minha tarefa atual é

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

Mas o tarball resultante contém o subdiretório .git. Poderia apontar ninguém fora como eu poderia impedi-lo de ser incluído?

Foi útil?

Solução

Isso funciona:

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

Seus padrões estavam errados, para mais informações sobre os padrões de ler aqui: http: // ant.apache.org/manual/dirtasks.html#patterns

Outras dicas

Ant tem pré-configurado exclui padrão que impedem tarefas baseadas em diretório do processamento de arquivos de controle para o CVS, Subversion e VSS. Infelizmente, esses padrões não cobre quaisquer outros sistemas de controle de versão. No entanto, você pode modificar os padrões usando a tarefa :

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

Isto irá excluir os arquivos Git de qualquer processamento posterior (assim que cada posterior utilização , , ou similar irá ignorar os arquivos de controle).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top