I would like to set up something like this:
1. Private central Git (Gitorious)
2. Each Developer will have read permission to master branch of the project
3. Each developer pulls changes from master and push them to his own clone/fork (maybe just branches, I havent' decided yet) - feature branch.
4. TeamCity monitors each cloned repository (feature branch) and fires Build + Tests on each commit.
5. When Build + Test Pass, TeamCity pushes changes to branch - "quality-assurance".
6. When QA check the code they can manually fire separate build production build or something like that, and TeamCity builds everything push changes to master.
I know I can monitor feature branches (branch remote run trigger) and trigger build on them, but I don't know how can I push that feature branches to "quality-assurance" branch. Any ideas?