If for some reason your TFS build takes up long time to finish, you can easily reduce that time by following a few simple steps:
- Stop indexing sources
- Deploy only the files that are necessary to run the application
- Disable "Analyze test impact"
- Disable "Associate Changesets and Work Items"
In my case the initial build time took ~130 seconds.
After introducing those simple steps I reduced that time to 70 seconds.
In case you have a big team, that's constantly contributing that really makes a difference! :)
If you've ever used TFS you'll know what I'm talking about here...
I cannot image how it's possible that such a company as Microsoft produces such an immature tool.
Really, I'm a big fan of Microsoft but every following version of TFS copies the same little bugs that basically make it almost unusable and very "user unfriendly".
It would take a few hours of research or simply asking the community a few simple questions, something like "what is the most frustrating thing about TFS". I bet that all the answers would be quite similar.
I did that job for Microsoft, here are the most criticized "features" of TFS:
- You have to be online (every little change you make needs to be synchronized with the server)
- Everything is read-only (you cannot simply edit the file in another editor, first you have to check it out or explicitly make it writable)
- Check-in file list shows identical files (even though TFS only cares about file contents it cannot determine whether the file has actually been changed or not, it simply shows all checked-in files)
I think you will all agree that for Microsoft, a company with dozens of brilliant engineers, it should be quite important to meet those community expectations.
By the way...I always wonder if they used TFS to store the whole codebase for Windows, Office etc... :)