DefaultExcludes Task

## DefaultExcludes

Since Apache Ant 1.6

### Description

Alters the default excludes for all subsequent processing in the build, and prints out the current default excludes if desired.

### Parameters

Attribute | Description | Required
--- | --- | ---
echo | whether or not to print out the default excludes | true required if no other attribute specified; defaults to false
default | go back to hard wired default excludes | true required if no other attribute is specified
add | the pattern to add to the default excludes | if no other attribute is specified
remove | remove the specified pattern from the default excludes | if no other attribute is specified

### Examples

Print out the default excludes

    <defaultexcludes echo="true"/>

Print out the default excludes and exclude all `*.bak` files in all further processing

    <defaultexcludes echo="true" add="**/*.bak"/>

Silently allow several fileset based tasks to operate on emacs backup files and then restore normal behavior

    <defaultexcludes remove="**/*~"/>

    (do several fileset based tasks here)

    <defaultexcludes default="true"/>

### Notes

By default the pattern `**/.svn` and `**/.svn/**` are set as default excludes. Since version 1.3, Subversion supports the "_svn hack". That means, that the svn-libraries evaluate environment variables and use `.svn` or `_svn` directory regarding to that value. We had chosen not to evaluate environment variables to get a more reliable build. Instead you have to change the settings by yourself by changing the exclude patterns:

    <defaultexcludes remove="**/.svn"/>
    <defaultexcludes remove="**/.svn/**"/>
    <defaultexcludes add="**/_svn"/>
    <defaultexcludes add="**/_svn/**"/>