I'm trying to make sense on the best way to do automatize a series of things in a row in order to deploy a web-app and haven't yet came up with a suitable solution. I would like to:

1. use google's compiler.jar to minify my JS
2. use yahoo's yui-compressor.jar to minify my CSS
3. access a file and change a string so that header files like "global.css?v=21" get served the correct version
4. deploy the app (sftp, mercurial or rsync?) omitting certain directories like "/userfiles"

Can you guys put me on the right track to solve this?

Thank you!