sindresorhus/grunt-concurrent — pull request #42 by dylancwood (2014-06-27 14:16:18+00:00)
Title: Explode targets

Thank you for a very useful grunt utility!

I would like to suggest these two additions to the available options in order to make the grunt-concurrent even more powerful.

##option.concurrentTargets

If set to true, this option will cause run each individual target of the specified tasks(s) concurrently. Tasks specified with specific targets will not be expanded into individual targets. This can be useful when wishing to run all targets of a task concurrently to save time.

For example, we use a modified Gitflow worflow, and our daily build process uses the grunt-git plugin to pull each branch of all of our repositories from github. We have 12 repositories and three branches of each that need to be pulled in (master, develop and release). The limiting factor of pulling each repository is network transfer, and therefore it makes sense to pull several repos at once. Given that we have a `gitpull` task with targets set up for each combination of branch and repository, we can simply use the following grunt config to pull four repos at a time:
```js
gitpull: {
repo1_master: {...},
repo1_develop: {...},
repo1_release: {...},
...
repo12_master: {...}
},
concurrent: {
pull: {
tasks: ['gitpull'],
options: {
limit: 4
}
}
}
```

##option.ignoreTargets
Task properties that should be ignored when expanding task-targets into tasks to be run concurrently. By default, the concurrentTargets option will ignore task properties named 'files' and 'options', but there may be other task-specific properties that are not targets, or targets that the user does not with to run.

Please take a look at the other example that I've added to the readme, and let me know if you have any feedback.

Thank you.