Mark Waite (sorry for reviving the issue but it seems most relevant) I've read the whole issue over and over again, I've tried linked plugin and while it does work there is still remaining issue.
In principle I would like to have something very simple: I configure branches, each configured branch gets build despite containing already build sha1 (similarly to what's happening when you have only one branch - it's build regardless if the tip sha1 has already been build). Mentioned plugin solves it as it will trigger the build of all configured branches, but… only the first configured branch will get build:
After filtering out what's already been built: 
After exploding branches: 
Nothing seems worth building, so falling back to the previously built revision:
So I've tried to tinker a bit with the plugin and force it to simply return both branches, but this backfired in a bit unexpected way - as git-plugin uses sha1 to track what was already build it resulted in constantly spawning jobs.
If I read it correctly there is no way to distinguish it currently from the strategy plugin - is that correct?
I investigated a bit more and it looks like git-plugin only schedules jobs (vide hudson/plugins/git/GitSCM.java:1018) but then the new build does the same checking… and previous observation applies (that from the strategy it's impossible to make a sane distinction).
I know that you are reluctant to change it (see your comment on 2014/Sep/05 3:27 PM) but it would be nice if it would be possible to somewhow make it at least optional or available through strategy. If you think this could be done through strategy could you make a suggestion how to approach it? I think more people would be interested in something as simple as "build all configured branches when build is triggered ignoring sha1 checking".