NOTE: This post has been updated since it was initially published. The earlier version mistakenly stated that TFS server licenses were free in TFS 2015 Update 2 and beyond. This is not the case. TFS Express can still be used free of charge for up to five users. You need a server license to use the full version of TFS in a compliant manner. You can either purchase a license directly or obtain one through a Visual Studio subscription (formerly known as an MSDN subscription).
In Team Foundation Server (TFS) 2015 Update 2 we made some changes to the way the code deals with licensing. Note that we did not make any changes to the actual licensing requirements for Team Foundation Server – those are the same as they were for TFS 2015 RTM and TFS 2015 Update 1, and details can be found in the licensing whitepaper.
We’ve gotten a number of questions around this because the names of the installers available on www.visualstudio.com were not chosen very well – they included the word “trial”. Sorry for the confusion – we will pay more attention to naming in the future. Hopefully this post will clarify things.
In earlier versions, TFS included code which required a valid product key to be present in order for the server to start up. If you downloaded TFS from MSDN Subscriber Downloads (MSDN) or the Volume Licensing Service Center (VLSC), the version you downloaded had a product key pre-installed. If you purchased TFS through retail outlets, you needed to enter your product key yourself. And if you downloaded TFS from www.visualstudio.com, you needed to start a trial. In the trial scenario, you would get 60 days (with a single 30-day extension) before your server would stop working unless you entered a product key. So it was pretty important to enter that key on time…
Starting with Update 2, you will not need to enter a product key into any version of TFS. If you download TFS from www.visualstudio.com, however, there will continue to be a trial experience. This experience is only there to help you comply with our server and user licensing requirements. You can opt out of it up front, at any point during the trial, or even after it expires. Critically, your server will continue working even if you let your trial expire. When you complete the trial, or when it expires, you need to ensure that you have a valid license in order to remain compliant.
It is important to note that the installed bits are the same whether you get TFS from www.visualstudio.com or through one of the other channels – MSDN, VLSC, or retail. The only difference is a configuration setting which tells the code to present the trial experience. (An additional cosmetic difference, as noted above, is that the names of the installers from www.visualstudio.com include the word “trial”, while the other versions do not. This does not indicate that this version is only a trial, just that it enables the trial experience.)
The trial experience begins with a page in the configuration wizards used to set up new servers. A new page in these wizards, Licensing, describes the experience and provides a couple of links to more information.
If you un-check the I want to start a trial of Team Foundation Server box, that will be the end of the experience. If you leave it checked and configure your server, it will then be in trial mode.
At any point during the trial, you can go to the Team Foundation Administration Console and complete the trial. Just select the root level node in the left hand navigation and click Complete Trial.
If your trial expires, every user will see a banner in most pages of the TFS Web UI. The text of this banner will vary depending on whether the trial can still be extended or not. The following image shows the contents of the banner when the full 90-day period has expired.
Again, the server will continue working indefinitely, so you don’t need to worry about mistakenly letting the trial expire.
We hope these changes help to streamline things for TFS users while also making it a bit easier to understand and comply with TFS licensing requirements. Sorry again for the confusion around naming, and hopefully this clarifies things!