jenkinsci/subversion-plugin — pull request #14 by pauxus (2012-08-03 17:14:30+00:00)
Title: Ignore Commits only consisting of changed properties on dirs.

- introduced a new property (checkbox)
- changed XMLParser to include "kind" attribute into changelog
- paths containing kind:dir and action:M (which must be a property
change)
are ignored during notifyCommit and not part of SCM.ChangeLog,
i.e. they are ignored in Maven Builds.

This is useful for Incremental Builds in Maven in a branch that is target of merges (i.e.: trunk). Without that this modification consider a project of 100 modules. Every merge (even a "block-revision" merge, that doesn't change any files) changes the top directory of the project (svn:mergeinfo), i.e. from the perspective of Jenkins, the aggregator project has changed (which is usually inherited by all modules). Jenkins thus includes the aggregator in the list of changed modules and ALL modules are build.

When doing frequent merges this results in continual rebuild of the whole project, totally negating the advantages of incremental builds.

This pull request allows to exclude property-only changes on directories from:
- the SCM-Polling (i.e. a change that only consists of property changes on directories does not result in a new build)
- the changelog used by MavenModuleSet when calculating the changed modules of a new revision.

A changed path is considered Property Only when it consists of a "M"odified Action on a directory.