Blog

How TFS Lost my Trust

November 26, 2008

This morning, I spent the first 30 minutes of my day figuring out why the CI build failed after I checked in some changes to the code. No big deal, right? I just messed up. Turns out that I didn't screw up the code but TFS did.

Before committing the code to the source repository, I merged with the latest version on the trunk and ran all the unit tests. Everything was fine and dandy. After I checked in the code, TFS decided in all its wisdom to not update 5 source files, which were randomly picked of course. I didn't get any errors when I committed the code, so I was completely unaware of any problems whatsoever.

When I noticed that the CI build had failed, I naturally tried to figure out what was going on. From the build log I noticed some compiler errors about classes that couldn't be found. I checked and double-checked whether I forgot to commit them, but I didn't.

This is something that happens about once or more times a week. To fix this again, a colleague has to update its local copy of the source code and determine which files are skipped by TFS. Then I have to 'touch' those files on my machine and check them back in. At this point, valuable time of two persons is wasted.

I strongly believe that a source control system is the backbone of any proficient and productive development team. If you can't rely on a stable source control system, then what's the point? I consider TFS to be seriously broken. The upside of this sad story is that I've really come to appreciate a stable source control system like Subversion and the people who spent their free time in order to accomplish that.

There, I've got it out of my system. I can breathe normal again.

If you and your team want to learn more about how to write maintainable unit tests and get the most out of TDD practices, make sure to have look at our trainings and workshops or check out the books section. Feel free to reach out at infonull@nullprincipal-itnull.be.

Profile picture of Jan Van Ryswyck

Jan Van Ryswyck

Thank you for visiting my blog. I’m a professional software developer since Y2K. A blogger since Y2K+5. Provider of training and coaching in XP practices. Curator of the Awesome Talks list. Past organizer of the European Virtual ALT.NET meetings. Thinking and learning about all kinds of technologies since forever.

Comments

About

Thank you for visiting my website. I’m a professional software developer since Y2K. A blogger since Y2K+5. Author of Writing Maintainable Unit Tests. Provider of training and coaching in XP practices. Curator of the Awesome Talks list. Thinking and learning about all kinds of technologies since forever.

Contact information

(+32) 496 38 00 82

infonull@nullprincipal-itnull.be