We were very excited in our team about the new TeamCity project settings synchronization, which allows to keep build configurations together with the software, so in case of running an old commit, it would run the given configuration. As we have noticed, it is not exactly the case, as Teamcity always uses the latest commit of the default branch (mostly master) when running the build configuration, but we can work around it by creating different VCS roots, with different default branches. So far, so good.
But one thing has surprised as, and it is that when we were testing on the synchronization project settings, we realized on a peculiar case. If under the .teamcity folder (the folder in Git which contains the project settings) someone deletes some file/folder, and commit/push to the server, Teamcity will delete the whole history of the given project. We think that this behaviour is extremely dangerous, and we would not like to have such a ticking bomb on each developing machine. We understand that anyone with the right permissions can do the same in teamcity, but deleting a file (or the whole folder) seems like plausible if someone is lousy enough.
So we are thinking, is there any way to keep the synchronization one way? Basically using Git as a way to save the configuration, and when needed setting back the synchronization to two ways. We dont want to keep the .teamcity folder in a different repository, since we want the software and the configuration synced, and therefore configuration and software must be in the same commit. So, is it possible?