2009-01-18 15 views
5

Używam Ant 1.7.1 do tarowania zawartości katalogu, który zawiera podkatalog .git. Moje bieżące zadanie to:Z wyjątkiem .git w Ant <tar> Zadanie

Ale powstały plik tarball zawiera podkatalog .git. Czy ktokolwiek mógłby wskazać, w jaki sposób mogę zapobiec jego włączeniu?

Odpowiedz

3

to działa:

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

Twoje wzory były błędne, aby uzyskać więcej informacji o stanie przeczytać tutaj: http://ant.apache.org/manual/dirtasks.html#patterns

3

Ant ma pre-configured default excludes które uniemożliwiają zadania katalogów opartych z przetwarzania plików kontrolnych dla CVS, Subversion i VSS. Niestety te wartości domyślne nie obejmują żadnych innych systemów kontroli wersji. Można jednak zmodyfikować ustawienia domyślne za pomocą <defaultexcludes> task:

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

Pozwoli to wykluczyć pliki Git z jakiegokolwiek dalszego przetwarzania (tak każde późniejsze wykorzystanie < smoły >, <javac>, < słoik > lub podobna będzie ignorować pliki kontrolne).

+0

Uwaga, Ant 1.8.2 dodał domyślne wykluczenia dla Git i Mercurial. –

Powiązane problemy