Details
-
Suggestion
-
Resolution: Fixed
Description
Our SVN Mirror add-on heavily relies on pre-receive hook modules. At the moment ordering of such hooks is non-deterministic:
When writing hooks keep in mind that the ordering of the hooks is non-deterministic, and shouldn't be relied on. Passing state between hooks of the same type is fraught with danger and should not be attempted; each hook should be completely standalone.
Unfortunately, that leads to unpredictable behavior for established Git-SVN mirrors. If SVN Mirror hook is getting triggered before other hooks, the result of those hooks is getting ignored, i.e. even if those hooks reject push operation, our hook still apply pushed commits as they already get synchronized with SVN server.
Is there any chance to provide any ordering mechanism for pre-receive hook modules?