Hi,
It's currently difficult to make reusable script when using <exec> task or
any other task using commandline args.
We oftenly need some "dynamic arguments" and this can be complicated.
Therefor, i suggest to introduce if/unless conditions on comand line args :
<exec executable="git">
<arg value="commit"/>
<arg line="-a" if="${commit.all.files}"/>
<arg value="-m"/>
<arg value="${commit.message}"/>
</exec>
I have a working implementation with related tests and documentation.
Commandline.Arg class now extends ProjectComponent, and expose accessors
for if/unless condition, and rely on PropertyHelper to check conditions.
Is this sufficient ? From what i have seen, it doesn't break backward
compatibility at least all tests are green :p.
The setProject(Project p) method should be invoked "automatically" by
ProjectHelper isn't it ?
If ant is used in pure java and we ommited invoking setProject(Project p)
method, it should also works as PropertyHelper seems null safe.
If there is no objection i will commit this this week end.