![catlight meaning catlight meaning](https://64.media.tumblr.com/960c88a923ac55eaadbdb85c2737cadc/tumblr_n5grmfAMTw1rscbr6o1_500.jpg)
I would not advise you to use a gated check-in when also not allowing multiple check-outs. This is the intended beheaviour and should not cause any issues for you unless you have disabled multiple check-out and you are, by having these files checked-out, blocking other developers from making changes. In the source control explorer the files will still have pending changes (and be checked-out) because the changes in your workspace have not yet been checked-in. When the build fails no the changes in the shelveset (created when the gated check-in build was triggerd) will not be checked-in by the build server thus the locks will not be released. Upon check-in all locks will be released so all files that have a check-in or check-out lock will be released when the build server checks in your changes on behalf of you. Only when the this private build passes the pending changes in your shelveset will be checked in by the build on behalf of the user who triggerd the gated check-in. TFS will then perform a private build using the latest version of the sources in combination with the shelveset it just created. When you check-in and a gated check-in is triggerd your files are not checked in but TFS creates a shelveset instead. To answer the second part of your question it is important to understand what a gated check-in does exactly. If you are using a chat application like Slack you can also integrate build notifications into your team's slack channel to be notified on build failure. I have used catlight myself recently for the exact same problem. If you don't want to use e-mail notifications there are third party applications that you can run in your tray to receive build notifications. In TFS 2013 there used to be a tool called Team Foundation Build Notification that shipped with Visual Studio 2013.