Buck Hodges
Azure DevOps (formerly VSTS and Team Foundation Server)
Latest posts
VSTS: Lessons Learned Doing DevOps at Microsoft at Scale
Last week I gave a keynote on DevOps at VS Live! 2017 in Orlando. In this talk I cover four main things. The video is now online, and you can find the slides here. For more depth and topics on how we do DevOps with VSTS, go to aka.ms/LearnDevOps. Enjoy! Follow me at twitter.com/tfsbuck
Brand new office in North Carolina
Right after Thanksgiving we moved the North Carolina team to a brand new office in Morrisville, just two miles from our old location. We were at the previous location for more than 12 years. When we moved in there, we took the office space as it was. That meant a lot of randomly shaped offices of widely varying sizes. It served us well, but we were overcrowded with the expansion that had been happening over the last couple of years. We’ve now grown the VS Team Services team here to about 110 people, and we’re hiring more. For comparison, the TFS team in Redmond and NC combined was 130 people in the summer of 2012...
How to configure a TFS proxy to work with Team Services
If you are using Team Foundation Version Control (TFVC) with Visual Studio Team Services, you can configure the Team Foundation Server Proxy to cache files for version control for your account. It’s very straightforward as the TFS configuration app will do the work for you. Let’s take a look at how to do that. I’m going through this with TFS 2015 Update 3. It will be similar for newer versions of TFS. You will need to install the TFS Proxy on a server OS such as Windows Server 2012 R2. The entry point to configure the proxy in the TFS configuration UI will only show up when it is running on a server OS. If you ha...
Controlling exposure through feature flags in VS Team Services
One question that I often get from customers is how we manage exposing features in the service. Features may not be complete or need to be revealed at a particular time. We may want to get early feedback. With the team working in master and deploying every three-week sprint, let’s take a look at how we do this for Team Services. Goals Our first goal is decoupling deployment and exposure. We want to be able to control when a feature is available to users without having to time when the code is committed. This allows engineering the freedom to implement the feature based on our needs while also allowing control for...
TFS 15 RC2 is available and ready for production use
We have now released TFS "15" RC2. We are using it in production internally. It is fully supported for production use. You can upgrade from TFS 2012 or newer to RC2. You can also upgrade the RC1 release to RC2, and you will be able to upgrade from RC2 to RTM (that should be a very fast upgrade, since there will be very few changes between RC2 and RTM). Check out the Getting Started page as well as the Release Notes page, which also lists out the very long feature list. Here are the requirements links. Here are direct links to the downloads. I'd love to get as many servers using it as possible for folks to ...
Would you like SSH turned on for your Team Services account?
[Update 5/29/2016] We will be turning on SSH for all existing accounts once we finish deploying sprint 100 (hopefully by the end of this week). We are beginning to roll out SSH for Team Services accounts. If you would like SSH enabled for your account, please email me your account URL. We still need to implement support for brand new accounts (new accounts won’t work with SSH until DNS entries propagate, and we’re working on a solution to eliminate that delay), but it’s otherwise complete. We also have documentation for configuring SSH available. Follow me at twitter.com/tfsbuck
TFS 2015 Update 2: Gated checkin for the new build system (build vNext)
When we shipped the new build system with TFS 2015, we ran out of time to add gated checkin. A lot of customers depend on gated checkin for their workflows, and as a result they’ve been unable to move to the new build system. I’m happy to say we’ve now fixed that. Among the many features in TFS 2015 Update 2, including the new release management service and extensions, we’ve added support for gated checkin with Team Foundation Version Control (TFVC) for the new task-based build system (previously called build vNext to distinguish it from the old XAML-based build system). When you create a new build definition for...
How to create a team project in the web UI in TFS 2015 Update 2
You no longer have to use the version of Visual Studio Team Explorer that matches your server to create a team project. For the first time ever, you can now create a team project from the web UI with Team Foundation Server 2015 Update 2 or newer. This is something you’ve been able to do in Visual Studio Team Services for years, and we’ve finally added it to TFS. The entry point to create a team project is different in TFS right now and is hard to find for creating the first team project on a freshly installed server. This is something we’ll address in the future. When you install a fresh TFS server and connect to...
Using VS Team Services Web Hooks with Azure Functions
Today at the Build 2016 conference, Azure announced a new feature called Azure Functions. Here’s a quick description from the main page. Azure Functions is an event driven, compute-on-demand experience that extends the existing Azure application platform with capabilities to implement code triggered by events occurring in virtually any Azure or 3rd party service as well as on-premises systems. Azure Functions allows developers to take action by connecting to data sources or messaging solutions, thus making it easy to process and react to events. Azure Functions scale based on demand and you pay only for the reso...
Using Zapier to email work items to my backlog in VSTS
I use the board view of the backlog in my VS Team Services personal account to keep track of my work. I’ve wanted to be able to email a work item to my backlog, and today I finally got around to doing it. It was really easy thanks to our Zapier integration. I signed up for Zapier using the link on the Marketplace page, and that was great because after signing up it took me to a page where email integration was the first page. From there I just needed to tell Zapier my account name. I authorized Zapier to access my account. Finally, I had to pick the team project and type of work item. When you click on the dr...
Gated checkin for Git: Using Branch Policies to run a build in VSTS and TFS
Let’s start with what gated checkin is, which is a feature we shipped as part of TFS 2010. Gated checkin enforces that a change in a branch builds and optionally passes tests (and anything else you want to do as part of your build) before it is checked in and available to everyone else in the branch. The gated checkin process we shipped ensures that changes are evaluated sequentially: changeset N+1 has been built after and includes changeset N. We found internally that literally processing one changeset at a time was too slow for the volume of people we have in a branch, so we introduced batching to allow M chang...
Git Credential Manager is now installed by Git for Windows
Beginning with version 2.7.3, Git for Windows includes the Git Credential Manager (GCM) that makes authenticating with Visual Studio Team Services (VSTS) a breeze with both Microsoft Accounts (MSAs fka LiveIDs) and Azure Active Directory (AAD) identities. Since GCM is installed by default, you’ll get prompted for credentials when running git just like you would from VS. Follow me at twitter.com/tfsbuck
Tenth anniversary of Team Foundation Server
Today marks the tenth anniversary of shipping TFS 2005, which was our first version. We shipped nearly six months late – VS 2005 shipped in November 2005. The product has evolved an incredible amount since then. The most infamous part of the first version was how hard it was to install (we completely rewrote our setup in TFS 2010). We spent a little more than three years building the first version (I started as developer on TFVC in April 2003, and development had started just before that). There are a lot of products that never make it out the door – never make it to market – and lots of products that never surv...
Caching: What could go wrong?
There’s an old saying about regular expressions that I’ve always liked. I think it applies equally to caching. Here’s my version. Some people, when confronted with a performance problem, think “I know, I'll add a cache.” Now they have two problems. It’s so tempting to address a performance problem by adding a cache. After all, classes like Dictionary are very easy to use. Caching as a solution to the performance/latency/throughput problems means there is more complexity, which will lead to more bugs. Bugs with caches can be subtle and difficult to debug, and bugs with caches can also cause live site outage...
NuGet packages for TFS and Visual Studio Online .NET client object model
For the past couple of releases we’ve released the Team Foundation Server/Visual Studio Online client object model as a downloadable installer (aka MSI). Additionally, the license for it did not include the right to package it in an application for redistribution. As a result, it was inconvenient for builds and added friction for installing an app that depended on it (at least on machines without Visual Studio or Team Explorer). Additionally, the client libraries were installed into the .NET GAC in previous versions, which meant that you couldn’t have an application have its own copy of the client libraries – ins...
Fix: Windows 10 upgrade couldn’t update the system reserved partition
Disclaimer: This is what worked for me, and it’s not guidance from Microsoft. It may not work for you. Since this involves resizing partitions, it could wipe out all of your data. You may want to create a backup first. Proceed at your own risk. Over the weekend I upgraded my machines at home to Windows 10. I had two desktops and one Surface Pro (the first one) running Windows 8.1. Since I had multiple machines to upgrade, I downloaded the Windows 10 installer to a USB flash drive using the media creation tool mentioned on Download Windows 10. For me, the media creation tool wouldn’t recognize the USB drive, so I...
How we deploy Visual Studio Online using Release Management
**UPDATE April 25, 2017** This blog post describes our old deployment process. We now use VS Team Services Release Management to deploy VSTS. We use VS Release Management (RM) to deploy Visual Studio Online (VSO), and this post will describe the process. Credit for this work goes to Justin Pinnix, who’s been the driving force in orchestrating our deployments with RM. This documentation will help you get familiar with how RM works and how you can use it to deploy your own services, and you can find even more details in the user guide. Terminology First, let’s briefly cover some terminology. RM has the notion ...
Add, edit, rename, and delete files in the web browser with Visual Studio Online and TFS 2015
Back in the December 17th update, we added the ability to make changes to files in the web UI, and it works for both TFVC and Git. Edit is easy to find, since it’s right above the content on the screen. Add, rename, and delete are available through drop down menus. Let’s take a look at where those are. To add files, you need to click on the triangle beside the parent folder. In that same menu, you can also rename or delete the folder as well as download the folder as zip file. When adding files, I can either choose to create a new file, which will then take me to the editor in the browser, or I can upload ex...
Original Surface RT is a great digital photo frame
I have four Surfaces: the original RT, Surface 2 RT, Surface Pro, and Surface 3. When I got the original Surface RT, which Microsoft gave to every full time employee shortly after it came out, I bought the Type keyboard and stopped using my iPad. The device was sluggish, though, particularly with Outlook. I bought a Surface 2 RT when it came out because it’s a much better machine (faster and even better display), and I carry it as a backup machine when I travel (I use my Surface 2 frequently). A couple of months ago, I bought a new digital photo frame (the one that I had died). The display on it wasn&rsquo...
Mainstream support for TFS 2010 ends in July
Time flies, and the end of mainstream support for Team Foundation Server 2010 is July 14th. Yep, we’re celebrating it on Bastille Day. If you are still using TFS 2010, now is a great time to upgrade to TFS 2013 Update 4. Also, our next public pre-release of TFS 2015 will be “go-live” (the current CTP is not), meaning you can use it in production.Follow me on Twitter at twitter.com/tfsbuck
Moving TFS to cloud cadence and Visual Studio Online
We get quite a few questions from customers on how we made the transition to shipping both an on-premises product and a cloud service. We moved from shipping every 2-3 years to shipping Visual Studio Online every three weeks and TFS every 3-4 months. You’ve probably seen the great set of vignettes at Scaling Agile across the Enterprise. It was also recently covered in a report from McKinsey and in an interview on Forbes.com. What’s missing is a deeper description of what changes we’ve made to how we work. A couple of years ago, we wrote document on how the team changed to meet the new deman...
Visual Studio Online reliability improvements
We’ve had a number of outages and other serious incidents in recent months. It’s clear we haven’t done enough to invest in reliability of the service, and I want to give you some insight into what we are working on that will be coming in January and beyond. First I want to give you a very brief description of the the Visual Studio Online (VSO) service topology. VSO consists of a set of scale units that provide services like version control, work item tracking, and load testing. Each scale unit consists of a set of Azure SQL Databases with customer data and virtual machines running the applicati...
How to add licensed users to VS Team Services via the API
How to provide non-admins access to activity and job pages
When we shipped TFS 2012, we introduced a feature in the web UI that makes it easy to look at the activity and job history. In the post I mentioned that you had to be an admin to be able to see the information. A question about this came up last week, and Sean Lumley, one of the folks who built the feature, pointed out there is a specific permission for this. The permission is called Troubleshoot and it is in the Diagnostic security namespace. These are not exposed in the web UI for setting permissions, so you have to use the tfssecurity.exe tool. Here’s an example command line that gives a TFS group call...
The ALS Ice Bucket Challenge
Yesterday, Brian took ALS Ice Bucket Challenge after being challenged by both Scott Guthrie and Adam Cogan. Brian then challenged me, James Phillips, and David Treadwell. I didn’t want to turn down a challenge from Brian. I happen to be in Redmond this week, so I thought why not do it with my team here. I mentioned it to Jessica, who is my great admin, and she then got a bunch of the DevDiv admins in on it (the level of excitement among the admins was through the roof). My whole day was booked, so I had no idea when I would do this. Then my 2 PM meeting got canceled. It was on! Then the admin team sent email to...
Ten years of blogging
This past week was the tenth anniversary of blogging here. Over that time I’ve written 560 blog posts. There’s clearly been a drop in my blogging frequency, unfortunately, in recent years. I’ve spent more time interacting with folks on Twitter over the last couple of years than on blogging because of the Visual Studio Online service. I started using Twitter to keep an eye on feedback and to look for problems that customers hit that we don’t know about (someday, I’d love that to be zero, but reality is that you can never have enough telemetry). I started at Microsoft in 2003, and whe...
Azure Portal Preview and Visual Studio Online: Adding a user
Today at the Build Conference, we showed a preview of the new Azure Portal, and that includes a preview of deep integration with Visual Studio Online. As with any preview, it has some rough edges and limitations. One of the limitations is that you have to create a new Visual Studio Online account through the new Azure Portal Preview. Your existing account will not work right now. All new accounts created through the new portal will be backed by Azure Active Directory. In the near future we will provide an experience to convert your existing Visual Studio Online account. This also means that adding a user is diff...
Patch for issue with Visual Studio 2013 Queue Build dialog
In Visual Studio 2013 and Team Explorer 2013 there is a bug that will cause the “What do you want to build?” combo box to be disabled and the entire Parameters tab to be blank. We have now released a patch to fix this bug: KB 2898341. This bug occurs when using VS or TE 2013 with a TFS 2013 server. We introduced the bug at the very end of the release when we made a performance optimization for builds on the server used by the Developer Division.Follow me on Twitter at twitter.com/tfsbuck
Visual Studio and Team Explorer 2013 no longer require IE 10 for installation
When Visual Studio 2013 and Team Explorer 2013 were originally released, the installation process required that Internet Explorer 10 or newer was installed. Today we released updated installers that no longer require IE 10. You will get a warning at the beginning of your installation that looks like the screen shot below. For VS 2013 there is a KB article titled Visual Studio 2013: Known issues when IE10 is not installed that describes what the limitations are if you don’t have IE 10 or newer installed (the “some features” link in the dialog takes you to that KB article). The good news is that there aren’t many...
Updated Team Foundation Server 2013 download addressing web and installation path issues
Today we have updated the TFS 2013 installation packages both on the web download page and in MSDN subscriber downloads. The reason is that we found two bugs that we wanted to address broadly. We’ve made changes to be able to catch these types of issues in the future. Here are details on the two fixes. Fixed: Red error box when using Code (version control) in the web UI In the case of upgrading from a prior version of TFS to TFS 2013 RTM, you will see a big error box that says “Error in the application” when using the Code section in the web UI (for example, viewing History). The reason is that we had a b...
Git and HTTPS with TFS 2013
Philip Kelley has written a great blog post that explains using HTTPS with Team Foundation Server 2013. In it he explains basic auth and Windows auth among other things. If you are using a self-signed certificate, the post will tell you how to add it to your client so that git.exe will work. Git network operations in Visual Studio 2013 Visual Studio 2013 includes in-the-box support for Git version control. That support includes the ability to perform Git network operations from inside of Visual Studio, such as cloning a repository, or performing a fetch, push, or pull operation on an existing repository. ...
How to fix an error with the Windows 8.1 upgrade utility
I had gotten a Windows 8 upgrade key with the purchase of a computer last summer. I hadn’t used it, so I wanted to upgrade a desktop my family uses. I ran the utility WindowsSetupBox.exe that you can download from the Upgrade Windows with only a product key page. However, it failed quickly after choosing either to run the upgrade or to download it to media. I didn’t write down the error message, but it wasn’t very descriptive – it just said that something went wrong. It failed so quickly, it seemed like it wasn’t really trying. So I downloaded SysInternals’ Process Monitor in...
What’s installed on the build machine in Visual Studio Online?
If you are using Visual Studio Online and wondering what’s installed on the build machine for your builds to use, we have a list here. Tarun Arora, one of our MVPs, put together a web site that shows a comprehensive list of what’s installed: http://listofsoftwareontfshostedbuildserver.azurewebsites.net/.Follow me on Twitter at twitter.com/tfsbuck
Team Foundation Service 2013 RC is go-live–use it in production
Have you upgraded to TFS 2013 RC yet? It’s a supported, “go-live” release that you can use in production. We are using it ourselves in production our biggest internal server (I’ve written about that server before). Download TFS 2013 RC and upgrade. You can check out what’s new here (hint: the background image at the top of that page shows off the new work item charting feature). One thing I want to point out is that Internet Explorer 8 is not supported for TFS 2013. You can use IE 8 (we don’t block it), but you may encounter problems, and the issues will get worse moving for...
How to delete a team project from Team Foundation Service using the web UI
[Update 18 Nov. 2013] It is now easier to get to the UI to delete a project. Navigate to the home page for your team project, then click on the gear icon in the upper left, and then you can click on the drop down arrow that will show up when you mouse over the name of the team project. You now have the ability to delete a team project from TF Service using the web UI rather than the command line (the command line still works, and you can find the instructions here if you need them). Unfortunately, this only applies to the service. In the future, we plan to have both team project creation and deletion be availabl...
Team Foundation Server 2012.2 (aka Update 2) now available
Today we released the second update for TFS 2012 (TFS, TFS Express). You will find a detailed list of features in this blog post. You need to install the one that matches your installation – full or express. You do not need to uninstall TFS 2012 RTM or TFS 2012 Update 1. Installing TFS 2012.2 will take care of uninstalling your previous TFS 2012 installation and then installing the new version. You also do not need to detach collections or anything else special. As always, you should make a backup of your server prior to upgrade (you do make and test backups regularly, right?). In this update, we preserve ...
Using VS 2012 and getting “TF206018: The items could not be…” when creating a project using Git
If you go to Team Foundation Service, create a new account, and then create a new team project that uses Git, you may receive the following error message when either you try to connect VS 2012 or use the “Open new instance of Visual Studio” from your project’s web page and try to add a new Visual Studio project to source control. TF206018: The items could not be added to source control because either no team projects have been set up, or because you do not have permission to access any of the team projects in the current collection. If you run into this situation, it is because Visual Stud...
How to see activity and job history in TFS 2012
[Update 9/15/14] Here you can find permissions for these pages. [Update 4/24/15] Added information about filtering job history by result. With TFS 2012, we introduced a new feature in the web UI that makes it easy to look at the activity and job history on your TFS 2012 server (this feature was first introduced in 2012 RTM). Before the 2012 release, you would have had to look at things like tbl_Command directly in the database to get this information. To see this feature, just go to http://<yourserver>/tfs/_oi if you have admin privileges. Grant Holliday has written a great blog post, TFS2012: New tools...
Team Foundation Server 2012 Update 2 supports 2010 Build Agents and Controllers
[UPDATE 9/26/13] TFS 2013 will include support for both TFS 2010 build agents and controllers and also TFS 2012 build agents and controllers. One of the changes we made in TFS 2012 for Update 2 was to support TFS 2010 build agents and controllers. This provides several major benefits. The first is the obvious one of not having to upgrade your build agents and controllers when you upgrade your server to 2012. The second is that you don’t have to alter your custom build WF activities to be built with 2012. The third is that you will still be able to use Windows XP and Windows Server 2003 to run build agents ...
OData Service for TFS v2
Brian Keller has released a beta of the second version of his OData service. We are also working to bring it to TF Service, so stay tuned. Check out the beta and give him feedback! OData Service for Team Foundation Server v2 Today we are releasing the beta of the OData Service for Team Foundation Server v2 along with a sample Windows Store application The purpose of this service is to help developers work with data from Team Foundation Server on multiple device types (such as smartphones and tablets) and operating systems. OData provides a great solution for this goal, and has been embraced by numerous d...
New build of git-tf required for use with Team Foundation Service
Yesterday’s update of Team Foundation Service requires a new build of git-tf, which is now available for download. Using a version of git-tf prior to the update will result in repeated prompts for your password but will never succeed in authenticating.Follow me on Twitter at https://twitter.com/tfsbuck
How to connect to TF Service without a prompt for LiveID credentials
Normally when you connect to the Team Foundation Service you are presented with a web page to log in with your Microsoft Account (aka LiveID). When you log in you can choose to have it remember you and you won’t have to enter your Microsoft Account credentials again (unless you don’t log in again for a long time, and then you’ll be prompted again). That’s great for humans, but what about an application or another web service that wants to connect? For that the code will need to use “alternate credentials," which you must enable on your account. This is the same setting used to enable basic authentication fo...
Bing desktop–set your background to the Bing image of the day
Okay, so this has nothing to do with ALM, but I really like the Bing desktop app for one feature: It sets the desktop background to the Bing image of the day. I used to run this app on Win7 and had missed it since moving to Win8 (I love Win8 and have it running on all my machines). Before the recent update, installing it on Win8 would result in a message telling you to upgrade to Win7. That’s a good reminder to be careful about what you do with version checks in your code. After downloading it, I drag it to the top of the screen and change the option to have it only show when I click on it (first option under se...
Extending Team Explorer in Visual Studio 2012
Today we posted information on how to extend the Team Explorer window in Visual Studio 2012. Check it out! Extending Team Explorer in Visual Studio 2012 Team Explorer in Visual Studio 2012 offers multiple options for extending the user experience. This sample demonstrates several of the extensibility points by adding a new Team Explorer page as well as by placing a new section onto the Pending Changes page. Introduction Team Explorer in Visual Studio 2012 offers multiple options for extending the user experience. This sample demonstrates several of the extensibility points by: more&hellip...
TFS 2012 Update 1: Permissions lost on attaching a collection
I just posted on the ALM blog about this issue.
Azure SDK 1.8 now available for build in Team Foundation Service
Brian wrote a post today about the version control web experience changes that were in today’s update. Today’s update also included Azure SDK 1.8 on the build VMs. I’ve seen quite a few folks asking for it, of course. One of the questions we get often is why we don’t have X in the build VMs. Some of Brian’s post today touches on that, mostly in the form of the explanation for our lack of support for building Win8 apps. The other issue we have is keeping up with the new releases of SDKs of all sorts. For a few, like the Windows Phone 8 SDK, we’ll time updates of the build VMs t...
Doc on unattended configuration of TFS 2012
TFS 2012 (RTM and newer) added a new tfsconfigure unattend command that supports unattended configuration of the server, build proxy, and SharePoint extensions. There’s now a new whitepaper available that explains it. While the paper is titled Unattended Installation of TFS 2012, it’s really unattended configuration. Unattended Installation of TFS 2012 Introduction Unattended install is a feature of Team Foundation Server that lets a user pre-set all configuration parameters for a desired TFS instance in advance. This allows TFS to be configured from start to finish without pausing for input f...
November power tools release for TFS 2012
Today we published a new release of the power tools for TFS 2012 Update 1. This includes important fixes for the backup/restore power tool to be compatible with the release of TFS 2012 Update 1. We did a lot of refactoring of the server DLLs for the cloud service, http://tfs.visualstudio.com, and we needed to update the backup/restore power tool in particular as a result. The one new thing we added in this release is x64 support for the PowerShell scripts. Beyond that, we fixed a number of bugs, most notably performance issues for the team members feature. Download power tools for TFS 2012 Update 1 If you nee...
TFS 2012 Update 1 Issue: Error while configuring build
[Update 2/1/13] A fix for the issues is now available. [Update 1/14/13] See this post for the latest on a fix with attaching collections. --- We’ve discovered an issue in TFS Update 1 that may result in errors when you try to configure a build agent or controller. You will see an error in the Build Service Configuration Wizard (configuring a new agent/controller) or in the TFS Administration Console (viewing the properties of a build controller/agent). In the event log on the server, you’d find an error about the database not being configured correctly. TF53010: The following error has occurre...
TFS and VS 2012 Update 1 now available
[Update 2/1/13] A fix for the issues is now available. [Update 1/14/13] See this post for the latest on issues with attaching a collection. As announced on Soma’s blog, Update 1 for Visual Studio and Team Foundation Server 2012 is now available. Over at the ALM blog, you can find more details on what’s new. For those using the Team Foundation Service at tfs.visualstudio.com, you are already familiar with the new features, as we update the service every three weeks. In addition to fixing bugs that were discovered after RTM, here are the new Features in Team Foundation Server in Visual Studio 2012 Update 1, whic...
New tool to upgrade from Visual SourceSafe to Team Foundation Server or Service
Today we have released an upgrade tool for users of VSS to upgrade to either on-premises TFS or the Team Foundation Service in the cloud! It provides a wizard-based UI for upgrading a VSS repository to TFS 2010, 2012, or the service. Compared to the old VSS conversion experience, there are quite a few improvements. With mainstream support having ended back in July for VSS 2005, now is a great time to move. You can download it now and find the documentation here. [UPDATE 11/14/12] We will be changing the docs to indicate that you are not required to have an empty team project collection or team p...
Windows Phone SDK now available in Build for Team Foundation Service
Brian mentioned this in a blog post last week, but I think it may have gotten lost in everything else that was going on. The Team Foundation Service’s build feature (i.e., build in the cloud) has the Windows Phone SDK installed on it now so that you can build you Windows Phone 8 (and 7) apps. The blocker here had been that the SDK could not be installed on the VMs we use because they run Windows Server 2008 R2, and that was fixed with the SDK released last week.Follow me on Twitter at twitter.com/tfsbuck
Video from 2012 Build Conference: Evolution of TFS into a Service
This year at //build/ conference I gave a presentation on the evolution of Team Foundation Server from a box product to a service that has a box product. It’s been a fun journey, and I enjoyed telling the story of what our team has accomplished over the last couple of years. I start with the beginning of the 2012 cycle and go over the changes we’ve made to our process and engineering system to be able to ship every three weeks. Along the way I answer questions from the audience and wrap up with some of the lessons we’ve learned. I hope you enjoy it. Developing Continuous Services: Real world ...
DevDiv is now running on TFS 2012 Update 1 final CTP
Back in June, I wrote about the upgrade of the main Developer Division server to TFS 2012 RC. That post described both the scale of that server as well as the issues that we found in the process of upgrading it and the for the first week of running it (we found most all of the issues in the first week). Last month we upgraded that server to TFS 2012 RTM. Now this past Friday, we upgraded it to the final CTP for TFS 2012 Update 1. While the CTP is not licensed for production use, we wanted to use this opportunity to find the issues that you only find in production on such a large server. We’ve been upgradin...
Upgrading TFS build from 2010 to 2012 – issues and workarounds
Jason Prickett has written a blog post summarizing issues and workarounds for problems encountered with TFS build when upgrading from TFS 2010 to TFS 2012. Upgrading your build definitions from TFS2010 to TFS2012 Follow me on Twitter at twitter.com/tfsbuck
Internal error loading the Changeset Comments checkin policy
[Update 11/26/12] You can get the fix by installing Update 1 (or newer) for Visual Studio 2012: http://www.microsoft.com/visualstudio/eng/downloads. Some customers, after starting to use Visual Studio 2012 with their existing TFS deployment, have been receiving check-in policy errors having to do with the Changeset Comments policy. The errors look like: Internal error in Changeset Comments Policy. Error loading the Changeset Comments Policy policy (The policy assembly 'Microsoft.TeamFoundation.PowerTools.CheckinPolicies.ChangesetComments, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' is n...
Standalone installer for the TFS client object model
[UPDATE 12/13/12] The TFS 2012 Object Model Installer is now available for download. This past week we released an installer for the Team Foundation Server 2010 SP1 client object model. Up to this point the only way to get it was to install Team Explorer. For folks writing tools that access TFS, this was a pain, as having to install TE was overkill when all that was needed was a small set of DLLs. Lots of folks have asked for this, and it’s finally available. We’ll be shipping a TFS 2012 client object model installer in the RTM timeframe as well. Team Foundation Server 2010...
Developer Division is running on TFS 2012 RC!
This past weekend we upgraded the TFS server used by the Developer Division and other teams who deliver Visual Studio 2012. It is now running TFS 2012 RC! Back in the beginning, the DevDiv server was our dogfood server. Then as all of the folks shipping products in Visual Studio, there were too many critical deadlines to be able to put early, sometimes raw, builds on the server. So we dogfood TFS on a server called pioneer, as described here. Pioneer is used mostly by the teams in ALM (TFS, Test & Lab Management, and Ultimate), and we’ve been running TFS 2012 on it since Februar...
How to customize the build summary page in TFS 2012 without a plug-in
Jason Prickett has been writing some great posts about the new features in Build for TFS 2012. One of my favorites is the ability for you to add sections to the build summary page without having to write any plug-ins. You just use the WriteCustomSummaryInformation activity in your workflow or make the equivalent OM calls from a workflow activity. The result is that you can display results, hyperlinks, and more on the build summary page. TFS11 RC – Simple Build Summary Customization So, I did a few posts when TFS 2010 released on how developers could customize the Visual Studio Build Detai...
Visual Studio 2012 features enabled by using a TFS 2012 server
While many of the features in Visual Studio 2012 are available to users using TFS 2008 or 2010, there are some features that are only available when using a TFS 2012 server. Also, the web experience in TFS 2012 has been rebuilt entirely from the ground up, and the result is a fast, fluid experience that also includes new experiences tailored to Scrum. Once you’ve upgraded your server to TFS 2012, installed your first TFS server, or are using the Team Foundation Service Preview, here are some of the features you are now able to use. The goal here isn’t an exhaustive list but to get you started. Versi...
Team Explorer 2012 keyboard shortcuts
Team Explorer 2012 has the following keyboard shortcuts for the built-in pages. We are adding some shortcuts within the pages for RTM.UPDATE 08/20/12: The last seven shortcuts were added for RTM.Follow me at twitter.com/tfsbuckTechnorati Tags: team foundation server,tfs 2012
After upgrading: Updating licensing and enabling async checkout for server workspaces
The other day I wrote a post with a summary of links for upgrading team project settings to turn on all of the new features, such as code review, task board, and more. There are a couple more things I want to point out that you’ll want to tweak after the upgrade. First is licensing for the feature set. The default setting is Standard. You can choose to set the default to Full if all of your users are licensed for Premium, Ultimate, or Test Professional 2012 (see the editions page). If not, you can add the people or groups who are licensed for full. Only users with Full access will ge...
Use the wizard to upgrade team projects in TFS 2012
As you’ve seen from Brian’s post and a bunch of others, Visual Studio and Team Foundation Server 2012 RC are now available. One of the consistent pain points in upgrading from one version of TFS to the next has been in upgrading the process for a team project. With TFS 2012, we’ve taken our first steps toward making it dramatically better. We now provide a wizard that is able to upgrade a team project’s process quickly and easily if you have made no customizations or only a limited set of customizations. There are a number of resources available to help you through ...
TFS 11: API for teams and understanding burn down charts
Ivan Popek has been spending a lot of time lately digging into TFS 11. He has written a series of posts on the APIs for teams in TFS 11, and he explains the burn down chart trend lines. Follow me on Twitter at twitter.com/tfsbuck
Perf counters in TFS 11
Jim Szubryt has written a post listing the perf counters available in all versions of TFS and calls out the new ones in TFS 11. Check it out if you are looking at the performance of your server. New Perfmon Counters With TFS 11 Beta Whether you are a small company running TFS or a large Enterprise there may come a time for you too where performance of your TFS system may come into question and you will need to determine what to look at when “TFS seems to be running slow”. You should proactively be establishing a baseline of performance for your environment and Perfmon counters can help. Having...
TFS 11 Beta upgrade: Existing workflows that have custom workflow activities using the TFS client OM
Duat, a developer on Team Foundation Build, has written a blog post on how to resolve post-upgrade issues with your build workflow if your 2010 build workflow uses custom workflow activities that use the TFS client object model. Your custom assemblies need update, or else, redirecting Loading your custom assemblies in the TFS 11 build service process triggers loading TFS 2010 assemblies, and the Workflow Foundation (WF) services are not happy about that. Why? The build process template, for a particular reason, references the TFS OM assemblies by their simple names. When there are more than one version of...
Running only impacted tests in TFS 2010 Build
Richard Hundhausen pointed out this blog post recently, and I thought I’d mention it here. Rob Maher walks through the process of setting up a build definition to run only the tests that involve the code that was changed. TFS 2010 Build - Only run impacted tests If your tests take a long time to run, you may wish to only run the tests that have been impacted by code changes checked in with the build (and of course run a full nightly build that executes all tests :) Unfortunately there is no out of the box feature to do this, so we need to edit our build xaml to do it. more…
Team Foundation Version Control client API example for TFS 2010 and newer
Over six years ago, I posted a sample on how to use the version control API. The API changed in TFS 2010, but I hadn’t updated the sample. Here is a version that works with 2010 and newer and is a little less aggressive on clean up in the finally block. This is a really simple example that uses the version control API. It shows how to create a workspace, pend changes, check in those changes, and hook up some important event listeners. This sample doesn't do anything useful, but it should get you going. You have to supply a Team Project as an argument. The only real difference in t...
Updating a team project to use new features after upgrading to TFS 11 Beta
[UPDATE 3/12/12] Aaron pointed out Ewald's recent detailed blog post that walks through adding optional metadata beyond the MSDN article: http://blogs.msdn.com/b/visualstudioalm/archive/2012/03/06/get-your-agile-project-fixed-after-an-upgrade-from-tfs2010-to-tfs11-beta.aspx. Team Foundation Server 11 Beta can be used to upgrade your existing TFS 2010 or 2008 server and used in production. We’ll be supporting upgrade from TFS 11 Beta to RC (you’ll very likely need to go from Beta to RC to RTM in order to follow the supported path). As Jason said in his beta blog post, TFS 11 beta is &ldquo...
Permission error with creating a team project from VS 2010 on TFS 2012
You must use the Visual Studio Team Explorer 2012 (included in all Visual Studio editions or may be separately downloaded) to create a team project on a TFS 2012 server. If you use VS 2010, you will get an error about not having permission. The error message is very misleading, because it’s not a problem with your permissions.--------------------------- Microsoft Visual Studio --------------------------- TF30172: You do not have permission to create a new team project. --------------------------- OK Help ---------------------------
Listing the work items associated with changesets for a path
Philip wrote a simple app to list the work items associated with the changesets for a given path, and it’s in some ways an enhanced update of Naren’s post. Given an URL to a collection and a server path (e.g., $/myproject/coolthing), it will list the work items that are associated with the most recent 25 checkins. This sample shows how to use the linking service to convert the work item artifact URIs that are stored with the changesets to get the core work item fields (ID, assigned to, state, type, and title). It will produce output like the following. Id: 352694 Title: Improve performance of q...
How to get the TFS objects used in our own UI integration
Philip, a dev on version control, recently helped with a question on how to get the TFS objects we use in our UI. I thought I’d post since others may find it useful. We recently had a request from a customer for a VS add-in that would be able to access the same TfsTeamProjectCollection and VersionControlServer objects that our own UI integration (such as the Team Explorer and Pending Changes toolwindow) are using. In this particular case the customer wanted to hook the BeforeCheckinPendingChange event from the VersionControlServer object and take a specific action when that occurred. But the framewo...
A tool to find duplicate copies in a build
As part of our builds, quite a few projects copy files to the binaries directory or other locations. These can be anything from image files to test scripts. To have our builds complete more quickly, we use the multi-process option (/maxcpucount) of msbuild to build projects in parallel. This all sounds normal, so what’s the problem? In a large team, people will sometimes inadvertently add statements to different project files that copy files to the same destination. When those project files have no references to each other, directly or indirectly, msbuild may build them in parallel. ...
How to subscribe to checkins not under a particular path
Nick Kirchem, who works on the TFS web access team, recently answered a question on how email subscriptions on checkin alerts. The question was, how do I subscribe to checkin alerts not under a particular folder? Here’s how to do it. bissubscribe /eventType CheckinEvent /address someone@domain.com /deliveryType EmailHtml /server http://myserver:8080/tfs/DefaultCollection "'Artifacts/Artifact[@ArtifactType=\"VersionedItem\"][not(starts-with(translate(@ServerItem, \"ABCDEFGHIJKLMNOPQRSTUVWXYZ\", \"abcdefghijklmnopqrstuvwxyz\"), \"$/devdiv/feature/build/qa\"))]...
How to delete a team project from Team Foundation Service (tfs.visualstudio.com)
[UPDATE 9/13/13] You can now use the web UI to delete a team project. [UPDATE 5/14/13] Updated the URLs and version of VS (used to say preview) The question came up as to how to delete a team project in the Team Foundation Service (TFService). When I first tried it, it didn’t work. Then I realized it’s the one case where you have to explicitly specify the collection name. It’s surprising because in hosted TFS each account has only one collection. You cannot create multiple collections currently as you can with on-premise TFS (this will change at some point in the future...
Now on Twitter: tfsbuck
With the build conference last week, I got a Twitter account and started following the comments and responding to questions. I’m @tfsbuck.
TFS 2010 SP1 Cumulative Update 1 available (again)
Brian posted about the cumulative update for TFS (the TFS SKU, not the client/VS) back in June. After it was released we learned of a couple of bugs in it, including one where upgrades would not work in certain cases. Last Thursday, we re-released it with all of the known bugs fixed. We understand where we went wrong, and we apologize for the inconvenience. You should apply this update to the server, build machine, proxy, and SharePoint extensions – all of the things that the TFS SKU installs. SP1 is a pre-requisite (i.e., this patch does not include SP1). Download: http://www.micr...
Patch to improve perf and reliability of the Workflow Designer
Today the .NET team is releasing a cumulative update patch. This has all of the QFEs up until a couple of months ago rolled into one patch. Included as part of that is a patch for WPF that improves the performance of the Windows Workflow Designer as well as a hang that a number of folks have hit. I had a few customers try it out, and they were happy with the improvements. I recommend this update to you if you work with the WF Designer (e.g., editing the workflow for Team Build definitions). There are still perf issues even with this fix, and the WF Designer team has made some very go...
Knowing which thread BackgroundWorker will use for its events
[UPDATE 7/19/2011] Stephen pointed me to his article covering this and more in February issue of MSDN Magazine, and I recommend it: http://msdn.microsoft.com/en-us/magazine/gg598924.aspx.We hit this recently, so I thought I’d post this email from Chad, a developer on version control, for anyone else who may have missed this subtlety. Today we discovered some of our code was making an incorrect assumption about the behavior of BackgroundWorker, so I thought it might be useful to send a note detailing what we found. Our code assumed BackgroundWorker would always call ProgressChanged and RunWorker...
Updates to our docs on MSDN last month
The fine folks who write documentation for our product are woefully outnumbered. Every month they release updates to the docs, adding new topics and enhancing existing ones. You can find the latest set of updates described on their blog.
Ewald’s posts on TFS Build 2010
Ewald Hofman, an ALM MVP, has written a great series of blog posts on Team Build in Team Foundation Server 2010. The 2010 release introduces Windows Workflow as the overall orchestrator of the build process. Ewald walks you through quite a few topics related to this and the other new features. Check it out! Technorati Tags: tfs 2010,team build,windows workflow
Be a developer at Microsoft in Durham, NC
Do you want to be part of a team of talented developers and build great software? Here’s your chance to join the TFS team. In addition to development positions in Redmond (work item tracking client team), I have openings on our development team here in North Carolina. Please follow one of the links to apply online. Job Category: Software Engineering: Development Location: United States, NC, Durham Job ID: 753545 Product: Visual Studio Team System Division: Server & Tools Business Visual Studio Team Foundation Server (TFS) is leading the way in improv...
Making debugging easier: Source Indexing and Symbol Server
Have you ever tried to debug an issue in old binaries and you don’t remember which version of the source they correspond to? Have you debugged without symbols because no one saved them? Here’s how to make your life easier.One of the great features in Team Foundation Server 2010 Build is the ability to have your builds automatically indexed with source server and the symbols stored in symbol server. Ed Blankenship has posted a great write up on how to configure and use this feature from the build to debugging in Visual Studio. Source Server and Symbol Server Support in TFS 2010 A...
OData service for TFS
Brian Keller has release a new OData service for TFS. He does a great job explaining it, and he also includes a video demo. OData Service for Team Foundation Server 2010 What the heck is an OData Service for Team Foundation Server 2010? I’m glad you asked. The purpose of this project is to help developers work with data from Team Foundation Server on multiple types of devices (such as smartphones and tablets) and operating systems. OData provides a great solution for this goal, since the existing Team Foundation Server 2010 object model only works for applications developed on the Windows p...
Professional Team Foundation Server 2010 is now out!
In the year since the release of TFS 2010, we’ve seen a run of great new books coming, all by authors who really know their subject matter extremely well. At the beginning of the year, Sayed Ibrahim Hashimi and William Bartholomew published Using MSBuild and Team Foundation Build, the book on MSBuild and TFS Build. Then Mickey Gousset, Brian Keller, Ajoy Krishnamoorthy, and Martin Woodward brought us Professional Application Lifecycle Management. My copy of that book came in handy when I wrote a post on using the code metrics power tool with TFS Build. It covers the full range of the VS...
How to reject checkins with code analysis violations
Andrew Hall wrote a great post on the Code Analysis Team Blog about how to use the code analysis checkin policy with gated checkin in Team Foundation 2010 Build to reject checkins that have code analysis warnings or errors. He shows you how to configure the rule set and set up the gated build definition to enforce the code analysis rules you’ve chosen. Preventing check-ins to TFS that contain code analysis warnings Recently we have received several questions regarding Visual Studio Code Analysis integration with Team Foundation Server’s check-in policy and build server, so I thought it woul...
We’re here, and we have a sign to prove it
Yeah, seven years in this location, and the building had no outward markings to indicate that our office is here. It’s official. We’re here. Really.
How to turn on compression for TFS 2010 web services
In the past, we’ve turned on compression for the SOAP responses for the TFS web services. In TFS 2010, you must do it manually. In the future, I hope we have it turned on by default. It’s particularly good for teams that aren’t at the same location as the TFS server. For users on a high-speed corporate network, it’s not likely to matter.Grant wrote a post on how to turn it on: TFS2010: How to enable compression for SOAP traffic.
How to distribute custom checkin policies and work item controls using the power tools
Custom checkin policies and custom work item controls are great ways to take advantage of the extensibility of TFS. You can use checkin policies to enforce certain standards on checkins (even in your builds). Custom work item controls allow you to add controls to your work item forms that present data in particular way, access other systems, etc. However, there’s no mechanism in Team Explorer to download and install these.Youhana has written a post on how to use a feature in the power tools that not many folks know about. By creating a couple of version control folders in each t...
Moving work item description fields to HTML
Neno’s been blogging a lot this month, and many of his posts have helpful tools associated with them. The post below caught my eye as particularly useful. We’ll be using HTML fields more going forward, and he has a tool to help you move your existing work items to use an HTML field for the Description. Enriching your Work Item Descriptions by Moving them to a HTML field In the Visual Studio Scrum 1.0 process template (and most likely in future process templates), Microsoft is using HTML fields with rich formatting for the work item description fields. In VS Scrum 1.0… ...
VS 2010 SP1 crashes when viewing build on a TFS 2008 server
Unfortunately, we introduced a regression into Visual Studio 2010 SP1 in the process of fixing a performance issue in the build details view that a number of customers had reported (viewing the log was really slow for larger builds). We made this change late in SP1. I apologize for the inconvenience. I want to make sure you know about that patch if you hit the problem.The fix is available at http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=34824. KB2522890 - VS10 SP1 crashes on build details from TFS 2008 build explorer Issue DescriptionVisual Studio 2010 SP1 crashes or shows ...
Managing TFS 2010: How to clean up test attachment data
Test attachment data generated by the new testing features in VS 2010 can add a large amount of data to your TFS server. In fact, we discovered on our own “dogfood” server that test data was taking up more space than the version control data. You can read more about it in Grant’s post here.You can use the Test Attachment Cleaner for Visual Studio Ultimate 2010 & Test Professional 2010 to delete old test data to reduce the size. Here’s the description from that page. Overview: In Visual Studio 2010, with the introduction of Visual Studio Test Professional 2010 &am...
Visual Studio setup projects (vdproj) will not ship with future versions of VS
[UPDATE 04/18/14] The Visual Studio team has released an extension to VS 2013 to address the feedback on this, which has been loud and clear for a long time now: Visual Studio Installer Projects Extension. [UPDATE 11/6/12] Fixed broken links. At the user group meeting last night, someone asked about the future of WiX. There was some confusion over the future of WiX since at one point there was a plan to ship it but then that changed. Rob Mensching, who leads the WiX project, is a developer on Visual Studio, and Visual Studio continues to contribute to the WiX project. We use WiX to create the ...
Hidden gem in TFS 2010: How to rollback a changeset with tf rollback
[UPDATE 8/8/11] The TFS 2010 power tools now provide rollback in the UI as described here. Tonight Justin and I spoke to the Minnesota Visual Studio User Group. It was completely unscripted, and we had a great time answering questions and telling a few stories (can you name the original code names for version control, work item tracking and load testing?). Nearly everyone in the audience was using TFS, and many folks had already moved to TFS 2010. We covered a lot of ground, touching on parts of VS and ALM – more than just TFS. I got to thinking as folks were asking questions ...
TFS 2010 SP1: Unknown error (0x80005000) (type COMException) – Make sure IIS 6 compat mode is turned on
[Update 3/16/11] There is a KB article with TFS 2010 SP1 installation troubleshooting should you hit problems: http://support.microsoft.com/kb/2516423. Problem A customer ran into this issue, and I want to post it to help anyone else who hits it. The symptom is that you install Service Pack 1 for Team Foundation Server 2010, and it fails. At first, we looked at the KB log file, which is an HTML file named something like KB2182621_20110314_153652021.htm (after the KB number, it’s the date and time – one log will be generated per failed attempt). That file doesn’t contain the error unfortunatel...
The book to buy on team build: Using MSBuild and Team Foundation Build, Second Edition
If you are responsible for work with your team’s build system, you will definitely want to buy a copy of Inside the Microsoft Build Engine: Using MSBuild and Team Foundation Build (Second Edition). Both of the authors now work for Microsoft. William Bartholomew is part of the central engineering team and has been building the infrastructure to allow Team Foundation Build to be used as the build system for all of the developer division. You can follow that progress and find more info on team build on his blog. Sayed Ibrahim Hashimi works on the web platform team, and he writes a lot about b...
Web projects and team build
Vishal Joshi, lead program manager for web platform tools, has a great blog covering using various project types with Team Foundation Build. Here’s a selection of his posts on using team build, which I highly recommend if you are working with web projects. Technorati Tags: team foundation,build,web projects,team build
Improvements to baseless merge in TFS 2010 SP1
Starting with TFS 2010 SP1, there are two improvements to how baseless merges work: base file version and handling deleted files. First is that if you specify a starting range for a baseless merge, we will now use that changeset as the base in the three-way content merge. That results in a vastly improved experience in merging file content for a baseless merge. For example, tf merge /baseless /v:1234~1234 $/ProjX/foo $/AcmeV2/foo or tf merge /v:1234~T $/ProjX/foo $/AcmeV2/foo. The second is the handling of deletions. Before the change, items that are deleted in the source branch were not included in the baseles...
Can you downgrade from SQL Enterprise to SQL Standard?
Question: Can a TFS 2010 Team Project Collection (TPC) on SQL Server 2008 Enterprise be down converted to SQL Server Standard 2008 edition? Answer: This is covered in the 2010 Upgrade guide post. The script is: exec prc_EnablePrefixCompression @online = 0, @disable = 1 (answer provided by Ed Holloway)
Code metrics command line tool
[UPDATE 3/24/12] You can find a real code metrics activity here as part of the Community TFS Build Extensions. Cameron Skinner has announced a new command line tool for generating code metrics. We’ve long gotten requests to be able to generate code metrics from the build. Prior to this tool, code metrics could only be generated from within the Visual Studio IDE. I installed it this morning. The readme link on the download page tells you where it is installed, which is %programfiles%\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop. I wanted to ...
Changes to the work item type schema reference docs
The folks who produce our documentation continue to experiment and find ways to improve our documentation. The most recent change involves consolidating docs. I’d encourage you to take a look and give them feedback. Significant Changes Made to Streamline the Content for Work Item Type Schema Reference A move has been afoot to eliminate topics that no one is reading anyway. By consolidating content into a smaller topic set, we believe that you will more easily access the information that supports you in accomplishing your tasks. In the area of defining and customizing the definitions of work...
Join the TFS development team and help shape the industry
Do you want to be a developer on the TFS team, solve challenging problems, and break new ground in ALM? Then join the TFS development team in Redmond, WA.You’ll notice that we mention cloud computing with Azure below. If you saw the PDC keynote demos this year, you saw some early work on getting TFS running on Azure. If you missed it, go to the 2:09:50 mark of the “PDC10 keynotes with Steve Ballmer and Bob Muglia” recording on the PDC10 site to see Brian Harry demo TFS on Azure (Brian also wrote a blog post about TFS on Azure). We’re working on great new features wi...
Join the TFS development team and help shape the ALM industry
See updated post.
Help improve MSDN – give them your feedback
Please take a moment to provide feedback to the documentation team on the changes they’ve made recently. They want to know what you think. Thanks! We need your input on how well our improvements to the MSDN Library content work for you. Allen Clark has reorganized the topic: "Extending Visual Studio Application Lifecycle Management" and would like to know if these updates make the topic more useful for you: "I've been working on streamlining some content in an effort to make it easier for you to get the information that you need. The first place I did this was in the Team Foundation SDK, in...
How to convert a branch back to a regular folder
In an effort to remove a small amount of complexity from the UI, we have the command to convert a branch back to a folder appear only under the main menu and not in the right click menu. The way to convert a branch back to a regular folder is to do the following. Why would you want to do this? The reason would be just to remove the branch from branch visualizations if you’ve decided you never want to see it again. This does not change the branching relationship, so you can still merge to and from the branch as before (it just affects the visualization and the properties you ...
How to figure out whether a change has made it to another branch
[UPDATE 11/5/12] I wanted to add that when using either the hierarchy view or the track changeset view, you can use Ctrl-C when the window has focus to get an image of it copied to the clipboard rather than having to use a screenshot tool. One of the great features in TFS 2010 is the ability to track changesets across branches. A prime user scenario for this feature is determining whether a fix has made it to a particular branch. Here’s an example of how to do that. How to track a changeset number: How to track a work item: If you have a work item that has a changeset link, it’s ev...
How to use the MSBuild debugger in Visual Studio 2010
Dan Moseley, dev lead for msbuild, wrote a debugger for msbuild while on leave(!) back during the 2010 cycle. While it ultimately couldn’t be fully completed and tested to be an official feature, it is in the product with a switch to enable it (it’s off by default). This was a conscious decision made by the VS team, and I think it was a great compromise. It wasn’t something feasible as a power tool, and it’s too useful to have to wait for the next release.Dan has written a series of blog posts on how to use it. Enjoy!Technorati Tags: msbuild
Reports to show you what’s happening with the TFS warehouse and cube
Grant has posted a set of reports that help you understand what’s going on in the TFS warehouse and cube in Team Foundation Server 2010 so that you can deal with issues such as field collisions, which can be very tedious to handle since out of the box we don’t provide easy ways to figure it out. His post includes an attached zip file that you can download and deploy to your TFS 2010 installation. Administrative Report Pack for Team Foundation Server 2010 One of the key components of TFS is the Data Warehouse, which is made up of a relational database and an Analysis Services cube. In ...
Team Foundation 2010 SDK published
Allen Clark has announced the publication of the first release of the TFS 2010 SDK. This represents a significant improvement in the documentation for the TFS API, and he will be releasing updates to it on a recurring basis. The first release is small (relative to the size of the TFS API), but it will grow. Be sure to leave feedback for Allen on what you find most valuable.Technorati Tags: tfs,team foundation server
Understanding changes in reporting in TFS 2010
Sunder Raman, a program manager for TFS, has written a series of posts on the changes to the warehouse and the cube for 2010. Reporting Cube John Socha-Leialoha, a developer on TFS, wrote a series on upgrading your reports. If you are interested in writing your own warehouse adapter, you’ll find the sample adapter in the SDK to be very helpful. If you have any questions about these topics, please contact Sunder and John. Enjoy!Technorati Tags: tfs,team foundation server 2010
Posts on using the new team project collection APIs
Taylor Lafrinere, a developer on Team Foundation Server who wrote a significant part of the new core server infrastructure APIs, has written a series of posts explaining some of the different parts. If you have other parts of the API that you are interested in, be sure to leave a comment on one of his posts.Here are a few of his posts to get you started. Technorati Tags: tfs 2010,tfs
Use test categories rather than test lists (vsmdi files)
Years ago, I posted an msbuild task to run tests without test lists for VSTS 2005. That functionality made it into VSTS 2008. Then Pierre Greborio added support for test categories. That test category capability is now available in VS 2010. Using test categories is now the preferred way of running groups of tests, and you no longer need to deal with tests lists (.vsmdi files), which are tedious to maintain and very difficult to merge.Here’s the documentation on MSDN to show you how to make use of test categories in the 2010 release. Defining Test Categories to Group Your Tests I...
TFS 2010 version control upgrade bug in handling labels, merges
UPDATE [6/12/2010] The patch is now available on MSDN Code Gallery here. You must install it after you complete the MSI setup portion (the files need to be on the machine and registered in Windows first) and before the upgrade wizard (it’s the upgrade process, not setup that needs to be patched). -- We discovered a couple of bugs in version control when upgrading to TFS 2010. They affect labels and future merges, and whether or not you are affected depends on what renames you have done on files in labels and branches. We are currently testing a fix that we expect to rel...
Customizing Team Foundation Server Project Portals
Phil Hodgson, a developers on TFS, published a new whitepaper that explains how to customize and get the most out of your dashboards in TFS 2010. Check it out! Customizing Team Foundation Server Project Portals Phil Hodgson, Microsoft Corporation May 2010 This article describes important concepts about project portals for Microsoft® Visual Studio® Team Foundation Server 2010 and provides guidance for process authors who customize process templates used to create project portals for team projects. Team Foundation Server supports project portals that are matched to the out-of-the-box pro...
TFS 2010 Power Tools are now available!
Here is the first full release of Power Tools for TFS 2010! Previously we had released versions for beta 2 and RC. With this release the focus was to have parity with the 2008 power tools and fix bugs. We’ll be adding new power tools in the next release (no date yet). TFS Build Extension Power Tool is an exciting new addition to our power tools line up. The Build Extensions provide the ability to execute Ant or Maven 2 builds from Team Foundation Server and publish the results of the build along with any associated JUnit test results back to Team Foundation Server. T...
How to see the TFS server calls made by the client
Back in 2006 I wrote a post about a performance dialog that lets you see all of the calls made by the client. It works with Visual Studio (devenv.exe), TFS command line (tf.exe), TCM command line (tcm.exe), Test Manager (mtm.exe), etc. It’s still in the product in 2010, and it’s as useful as ever if you are writing code that talks to TFS, and you want to optimize for performance. It’s easy for extra calls to creep in, and this is a really easy way to keep track of it. Also, if you find that something seems slow in VS when working with TFS, it provides a way for you to see whether it is calling ...
TFS 2010 has shipped!
Monday was the official launch for the TFS and VS 2010 releases! I highly recommend upgrading from TFS 2005 or TFS 2008 to TFS 2010. The number of new features in TFS 2010 is very long, and there are lots of posts on them. One of the most exciting is that you can install TFS on a client OS (e.g., Windows 7) using SQL Express 2008. Brian Harry runs TFS and VS 2010 on his Win7 netbook that has 2GB of RAM.For those of you using VS 2005 and VS 2008 to connect to TFS 2010 servers, you’ll need to install the appropriate patch for compatibility. We had to make some changes to the beha...
Visual Studio 2010 Licensing Whitepaper is now available
I’ve posted before about TFS licensing, and the official whitepaper was finally released last week. The document covers Team Foundation Server as well as all of Visual Studio.Visual Studio 2010 Licensing WhitepaperTechnorati Tags: visual studio 2010,team foundation server 2010,vs,tfs
Fix for Message Size Issue in Outlook 2010 Beta
If you are using Outlook 2010 Beta, you probably need this fix because all of your emails are huge. It was killing me (and a bunch of other folks internally). It is fixed in the recent RC, but most people don’t have access (it’s not a public RC). The Office team has just posted a fix for this issue for folks using the Beta. Fix for Message Size Issue in Outlook 2010 Beta Recently, we posted information on the Outlook blog about a bug in the Microsoft Office 2010 Beta that increases the message size of some e-mails messages sent from the Microsoft Outlook 2010 Beta. The Office t...
TFS client API changes from Beta 2 to RC
While I don’t have a comprehensive list, I do want to point out these four changes in particular because these classes are fundamental to the API. If you have written code with the Beta 2 client API, here are the changes you will need to be aware of to use the RC client API. [UPDATE 2/12/10] Jim Lamb has posted updated TFS SDK docs: http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=TfsSdk&DownloadId=9107.Technorati Tags: team foundation,tfs 2010
Uninstall TFS Power Tools for 2010 Beta 2 before installing VS 2010 RC
Several folks have run into a problem after uninstalling VS 2010 Beta 2 and installing VS 2010 RC. When VS 2010 runs, you get an error message like the following. Team Foundation Error Could not load type ‘Microsoft.TeamFoundation.Client.TeamFoundationServerBase’ from assembly ‘Microsoft.TeamFoundationClient, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’. The problem is that the TFS Power Tools for 2010 Beta 2 are installed. Between Beta 2 and RC we made changes to the 2010 client API, so the Beta 2 power tools release will not work. We d...
Deep dive on Windows Workflow 4.0 activities
Patrick Carnahan is a developer on TFS Build, and he’s written a series of detailed posts on how to write custom activities in Windows Workflow 4.0 (WF), which is now used to orchestrate the build process for TFS Build in 2010. It’s a deep dive on WF activities. Jim Lamb’s post on how to integrate custom workflow activities into TFS Build is a great companion to this series. Introduction to Windows Workflow 4.0 In order to help everyone get up to speed with build customization, I wanted to take a few posts to share our collective knowledge on the Workflow framework in .NET 4.0...
Does your display not turn off automatically? You may need an update for your wireless mouse.
On my shiny new Windows Server 2008 R2 installation, my monitors won’t go into low power mode even though they should turn off after 10 minutes of inactivity based on my display settings in Windows. Chris Rathjen suggested to me that it could be the wireless mouse (Microsoft Natural Wireless Laser Mouse 6000 in my case – what a mouthful) keeping it awake. I unplugged it from the USB port, and sure enough, my monitors went into low power mode.So, I thought I’d try installing the current IntelliPoint drivers for Windows 7 64-bit to see if that fixed the problem. It did indeed do ...
Free of XP and Vista! All Win7, all the time.
I took a couple of weeks off over the holidays (a ton of people did – there weren’t many folks around last week), and I finally took the time to migrate our two desktops at home from XP to Win7. I’ve been running Win7 for many months on my work laptop, my personal laptop, and most recently a Dell Mini 9 (okay, I consider four months ago recently – heck, my blogging frequency is terrible now). My regular laptop at home is an old Thinkpad T40 that’s about five years old at this point. It has 1.5 GB of RAM (not that you need that much for 7 – 1 GB works fine for surfi...
Building .NET 4.0 Apps with Team Foundation Build 2008
William Bartholomew, former VSTS MVP and author of the book Inside the Microsoft Build Engine: Using MSBuild and Team Foundation Build, recently joined Microsoft. He's written a great post on the handful of steps you need to follow if you want to build .NET 4.0 applications with TFS 2008: Building .NET 4.0 Applications Using Team Build 2008. Check it out!Technorati Tags: team foundation server,tfs,tfs 2008,team build,msbuild,.net 4.0
What features are in TFS Basic 2010?
Earlier, I wrote a post explaining where to find TFS Basic. Someone asked a set of questions about TFS Basic, and I thought I’d post the answers here. What features are in TFS Basic 2010? Brian’s post describes a bit of the feature differences and also shows the installation process. It’s really much easier to talk about features not in Basic, as Basic is just TFS configured using a set of defaults to make the installation experience very simple. Basic does not configure SharePoint or SQL Reporting Services (RS), and because of the lack of RS there’s no warehouse. That’s it. ...
TFS 2010 server licensing: It’s included in MSDN subscriptions
[UPDATE 2/10/2010] You can now get the official Visual Studio 2010 Licensing whitepaper, which also covers TFS, Lab, and IntelliTrace. That is the best resource for understanding the licensing. Another big piece of news with the release of VS and TFS 2010 betas yesterday is the changes to TFS licensing for 2010 that make it even more affordable. Here are the comments from Doug Seven, our licensing guru in marketing, on Soma's beta 2 announcement post. Team Foundation Server 2010 will be included in the MSDN subscription that comes with Visual Studio 2010 Professional, Premium, Ultim...
Where is TFS Basic?
TFS Basic is not a separate download. It’s just a choice in the TFS configuration wizard. So to get TFS Basic, you download the regular Team Foundation Server installation, either 32-bit or 64-bit (yes, TFS now supports 64-bit Windows natively), and then run setup.exe. After the MSI (installation phase that more or less just copies files to your disk) is done, you’ll see the following dialog. Choose Basic, and finish your TFS setup in record time! Technorati Tags: team foundation server,tfs,tfs basic,tfs 2010
Team Foundation Server 2010 Beta 2 is now available!
With Soma's announcement today, Visual Studio and TFS 2010 Beta 2 are now available for download for MSDN subscribers. The most exciting part of the TFS 2010 Beta 2 release is the debut of TFS Basic. Brian Harry describes TFS Basic in detail in a post called TFS 2010 for SourceSafe Users. Don't think about it as just for SourceSafe customers though. Beta 2 is a "go-live" release, and I recommend checking out Brian Keller's post to Get read to "go live' with Team Foundation Server Beta 2. TFS Basic will install on Windows 7 and Windows Vista. Prior to Basic, you were required to have...
Dell Mini 9 and Win7: Getting a Microsoft Bluetooth mouse working
Win7 is awesome, so today I put Windows 7 Professional on my Dell Mini 9. This is the third laptop on which I’ve installed Win7, and every time it puts a smile on my face. The installation works well and generally most devices work after installation, minimizing time spent fiddling with drivers. The few devices that don’t work after installation often work after getting the drivers from Windows update. The only device not working this time was my Microsoft Bluetooth Notebook Mouse 5000. The computer would find it and list it in the Bluetooth devices in Win7, yet it wouldn&rsqu...
Hosted TFS discounted for Microsoft BizSpark members
If you are in the Microsoft BizSpark program, you now have access to discounted TFS hosting from SaaS Made Easy. Paul Hacker, a VSTS MVP, posted the announcement on his blog earlier this week. He also provides some info on BizSpark, which is a fantastic program for startups. BizSpark Hosted TFS I would like to announce that SaaS Made Easy, LLC is now a network partner in the Microsoft BizSpark Program. What does that mean? It means that if you are in the BizSpark program you are going to be able to use our Hosted TFS service at a substantial discount. Please visit us to get more information on th...
Using Test Impact in VSTS 2010
Dennis Stone, a tester on Team Test, has posted a great walkthrough of using the new test impact feature of 2010. If you aren't familiar with test impact, it's a feature that tells you which tests execute the code you've changed in a checkin. Rather than run all of the tests, you can run only the tests that test the code you changed. Test Impact Walk-through One of the key areas of focus for Visual Studio Team System 2010 is to enhance the experience for testers. There’s already lots of overview information on many of the new features out there so I’m going to dive right in to one o...
TFS 2010 Beta 1: Don’t run initial configuration from the administration console (MMC)
Beta 1 for TFS 2010, along with VS and VSTS, is now available to MSDN subscribers and will be available for broad download shortly. Be sure to check out the Microsoft Visual Studio 2010 First Look site to see what’s in this release, as well as the documentation on MSDN. Brian has written posts on TFS 2010 features in administration and operations and work item tracking so far. There’s a bug you’ll want to avoid in setting up and initially configuring beta 1. If you choose not to continue on through configuration at the end of the MSI setup phase (in other words, you uncheck the box to launch th...
TFS 2008 supports SQL 2008 SP1
SQL 2008 SP1 has just been released, and we've gotten a couple of questions about whether it is supported with with Team Foundation Server 2008. We tested SQL 2008 SP1 with both the original release of TFS 2008 and TFS 2008 SP1, and we do fully support using it with either release of TFS 2008.[UPDATE 4/14/2009] If you are installing TFS 2008 and using an instance of SQL that already has SQL 2008 SP1 applied, you will need to follow the steps in the following KB article: How to install Microsoft Visual Studio 2008 Team Foundation Server on a computer that has SQL Server 2008 Service Pack 1 installed.&n...
Debug your build with MSBuild Sidekick v2.3
The folks at Attrice have released a new version of their MSBuild Sidekick, and it now includes a visual debugger for msbuild. If you've ever tried to debug a build process, you know how tedious it can be and will want to check this out. MSBuild Sidekick v 2.3 is released We are happy to announce the release of version 2.3 of MSBuild Sidekick! Many of you would remember “How would you spend $100 on MSBuild?” poll published on MSBuild Team Blog. MSBuild users were asked to vote on most valuable future features in MSBuild; and while we could not improve MSBuild engine performance or add in...
Sorting by multiple columns in work item tracking
Recently I was showing someone the results of a bug query and sorting by more than one column in work item tracking in Team Explorer. When the person said he didn't realize that feature existed, I decided it would be worth posting. This also works in Team System Web Access. To sort by more the one column, simply hold the Shift key when clicking the column header of the column you would like to sort next. If you want to sort descending instead of ascending, continue to hold the Shift key and click the header again to flip the sort ordering. In the screen shot below, I'm sorting first by Priority ...
Why the CheckInEvent doesn’t list all of the files in a changeset
I recently received a question from someone about the CheckInEvent. We subscribe to the Notify event using the BisSubscribe tool. Basically we have many applications that share some projects, but as TFS has no mechanism for sharing we have written our own in house app. We have hooked into Notify for the CheckInEvents and we check each file after checkin to see if it is one of our shared files. If it is then we bounce it around to various locations etc.. All has been working fine until recently we started getting problems on large check ins. After some investigation I have noticed that the string eventXml...
New book on MSBuild and Team Foundation Build
There is now a book dedicated to MSBuild and Team Foundation Build. The book is written by Sayed Ibrahim Hashimi and William Bartholomew. Sayed has written about MSBuild before, both in books and MSDN Magazine articles, and William is a Team System MVP with a lot of experience in customizing the build process in Team Foundation.If you want to learn more about using build in Team System, you need to get a copy. Inside the Microsoft® Build Engine: Using MSBuild and Team Foundation Build Product Description The build process when code gets assembled to see how and how well it works is a cri...
Fix for TFS Build 2008 SP1 to speed up your builds
Quite a few folks have reported longer build times and noticed that the build details view has a lot more output in it, and as a result of the extra output being logged, the builds are slower. Aaron has written a post about a hotfix to speed up your builds in the SP1 version of Team Build. This hotfix, like many others for TFS, is available on the MSDN Code Gallery site.KB958845: TFSBuild TargetsNotLogged property fails to cut down noisy buildsTechnorati tags: team foundation server 2008 SP1, team build
Team System site overhauled
Sharon Elkins has written a post about the newly-redesigned Team System web site. She has some details on the transformation, but one thing that stands out is the page reduction. It's got about 75% fewer pages, which means a bunch of old stuff is gone.Check it out and give her your feedback!Technorati tags: team system, vsts
How to determine the latest changeset in your workspace
[UPDATE 7/25/14] Added equivalent API calls. When you run get for your entire workspace without any argument, you are requesting that the server give you the latest set of files. Later you might wonder what changeset was used in that get. To figure that out, you can use the following history command from the root (top) of your workspace. tf history . /r /noprompt /stopafter:1 /version:W Here's what that command means. The ". /r" part says to look at the current directory recursively, which is why you must run it from the root (top directory) of your workspace. Here I've specified "/noprom...
TFS Branching Guide 2.0 released
Bijan Javidi announced the release of TFS Branching Guide 2.0 on CodePlex. Check it out and be sure to send them your feedback on it. They are always looking for ways to enhance and make it even more useful. TFS Branching Guide 2.0 Welcome to the Team Foundation Server Branching Guidance Community Site! The purpose of this project is to build some insightful and practical guidance around branching and merging with Team Foundation Server. It's a collaborative effort by VSTS Rangers in cooperation with VSTS MVPs, Microsoft Services, and VSTS Product Team. Why the 2nd release? Since the first ...
Installing an evaluation copy of Windows Server 2008 and extending the evaluation period
More than a year ago, I posted a reference to Jeff Atwood's post on extending the evaluation period for Windows Vista.KB article 948472 describes the process for Windows Server 2008 and includes instructions on installing an evaluation version of Windows Server 2008 from the standard media as well has how to set up a recurring task in Windows Task Scheduler to extend the evaluation period to 240 days. How to extend the Windows Server 2008 evaluation period SUMMARY This article describes how to extend, or re-arm, the Windows Server 2008 evaluation period. The evaluation period is also known as the "activation g...
Using Team Foundation Build with BizTalk and SSIS projects
Unfortunately there are several types of projects that do not work natively with MSBuild. Jim Lamb, program manager for Team Build, has put together a few posts with pointers on how to get these to work with Team Build. Technorati Tags: team foundation server,team build,biztalk,sql ssis,msbuild