VCS Root Commit Hook – Active vs Inactive?


I have a VCS Root whose commit hook is listed as inactive. Despite being inactive the VCS root can access the repository for manual builds and if I change its SSH key it will show different open pull requests to build based on access.

For the life of me I can't figure out what active and inactive describe. If I do a search on the document page that's linked to next to those words it doesn't contain either word. What does it mean for a VCS root commit hook to be inactive and how do I fix it?

1 comment
Comment actions Permalink

Hello Myles,

Basically, VCS root can either rely on a commit hook to deliver data or on background polling to gather the data on its own. If commit hook is marked as inactive, that means that there either are no events from VCS received by the root instance (basically, either hook is not configured or is misconfigured) or the hook was marked as inactive. The latter can happen because VCS root will still do a background polling (just less frequently) to ensure that even if hook has went down, TeamCity will still retrieve the changes. If background polling brought a change hook did not report yet, it`s likely that the hook is not working, so if it was active it`ll be marked as inactive until turned on manually.

Summarizing the above, the only thing "hook is inactive" hints of is that VCS commit hook is inactive, and VCS root instance will poll the VCS for changes. It does not affect anything else. We do recommend to set up a hook because if you have many VCS roots in a polling mode, they`ll steadily use server resources, doing a request once a minute by default (this is significant on a large TeamCity installation). If you would like to set up one, please check the below article:

Please let me know if there are any other questions I could help with.


Please sign in to leave a comment.