We're making a plugin that will keep Stash Git repositories in sync with Subversion repository. This plugin uses SubGit.
It all works fine, except for merge of pull requests. The problem is that SubGit expects all new commits to come via client pushes and pre-receive hook to be called. Then SubGit has a chance to reject users commit in case there are incoming changes from Subversion.
With merge operation, hooks are not called and Git repository goes out of sync with Subversion repository.
What we need for SubGit plugin to function properly:
1) call a plugin's hook before updating branch reference to the newly integrated commits from the pull request;
2) let plugin's hook reject that merge commit (in case there are incoming changes from Subversion being translated to Git commits and pull request have to be merged again).
Alternatively, as a fallback, plugin should be able to disable pull requests feature for repository it keeps in sync with Subversion.