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
Tools for TFS on CodePlex: TeamReview and Info Kiosk
In the past I've written posts on tools for TFS on CodePlex. I'm happy to say that there are now too many to show in a post. I'd encourage you to take a look using this query for TFS on CodePlex. A couple of people have sent me email about new tools for TFS on CodePlex, and I thought I'd mention them. here. TeamReview The first one is TeamReview. Here's part of the description from the main page. Using Work Items to facilitate the code review process creates a completely in-IDE code review experience, the ability to project-manage the code review tasks, and the opportunity to get new value...
New blog by the Team Foundation Server global support team
The fine folks that support our customers have started a new blog: Developer Support Team Foundation Server. With posts by Trevor Hancock, Jim Saunders, and others on topics ranging from issues with TFS to the BPA (Best Practices Analyzer), you'll want to subscribe to this blog. They also plan to post monthly summaries of publicly released hotfixes (patches).Here's a sample of some of their recent posts. Check it out!Technorati Tags: team foundation server,support
Why is the TFS 2008 version control security dialog blank?
If you install Service Pack 1 for .NET 3.5 on the server (application tier) without also installing Service Pack 1 for TFS 2008, you will not be able to view permissions in version control. None of your data has been lost. What has happened is that the code in ASP.NET that serializes the permission data on the server does not work properly when .NET 3.5 SP1 is installed, resulting in empty lists being returned to the client. TFS 2008 SP1 contains a change that makes it work. Your choices are either to uninstall SP1 for .NET 3.5 or install SP1 for TFS 2008. Technorati Tags: team foundation serv...
TFS 2008 SP1: New setting to delete a build without deleting the build label
We've heard from a few customers that they would prefer not to have the build labels deleted when builds are deleted. In Team Foundation Server 2008 SP1 we added a feature to control whether build labels are deleted when the build is deleted. This feature is really a stop-gap measure, and it changes the behavior for build deletion on the entire server (i.e., you cannot change it for particular build definitions). In TFS 2010, we've added GUI options to allow you to control this for each build definition, and the setting is stored in the database along with the build definition.To use the feature...
TFS Build 2010: Build summary screen shots
The build summary view (sometimes called the build report) in TFS 2005 and 2008 leaves a lot to be desired. We wanted to rework it in TFS 2008 but lacked the time. Well, we've completely revamped it for TFS 2010. Chris Burrows has posted screen shots he captured from Jim Lamb's interview and screencast on TFS Build 2010 (it's basically a hybrid, which works really well). I'll post one of the screen shots here, which shows a compilation error. For the rest and the explanation of this one, take a look at Chris' post. You'll be able to see it in action in the new CTP that'll be released thi...
MSBuild Extensions Pack now available
Mike Fourie has released the first version of MSBuild Extensions Pack on CodePlex. This is a great collection of quality tasks for MSBuild that you can also use in Team Foundation Build. The MSBuild Extension Pack is the successor to the FreeToDev MSBuild Tasks Suite and provides a collection of over 170 MSBuild tasks designed for the .NET 3.5 Framework. A high level summary of what the tasks currently cover includes the following: Mike's goal is to make this the standard MSBuild task repository. He's looking to add more tasks and make these better. If you're interested in contributing, send him...
Pre-checkin validation tool for Team Foundation Build 2008: TFS Check-in Validation Tool
Mohammad Jalloul, a developer on the Developer Division Engineering team, has released a new tool on CodePlex called TFS Check-in Validation Tool. This tool provides the ability to have a checkin validating by a build prior to being checked in. This is similar to a feature in TFS 2010 called Gated Checkin, which is integrated into VS and TFS (you can learn more about Gated Checkin and other TFS Build 2010 features in this video). With both of these the goal is to prevent build breaks from being checked in by validating them beforehand. I refer to this as "pessimistic" continuous integratio...
Improving the performance of the work item tracking client with TFS 2008 SP1
Martin Woodward has written a great post that describes a feature that was added in TFS 2008 SP1 to reduce the amount of work item tracking metadata cached by the client. Depending on the number of team projects on your server and the number of fields and rules used by all work item types, this could result in a nice performance gain, particularly for remote users. Filtering WIT Client Meta-data In TFS 2008 SP1, a new feature was quietly introduced, WIT Client Metadata Filtering. This feature could boost the performance of your Team Foundation Server experience, reduce the amount of traffic flowi...
How to set up TFS 2008 SP1 to use TSWA links in checkin notification emails
One of the new features available in TFS 2008 SP1 is that a TSWA URL can be configured in the server so that checkin notification emails will have links to the Team System Web Access page for the changeset, which allows you to see the diffs for each of the changes. You can find the documentation for this feature at How to: Configure Work Item Hyperlinks to use Team System Web Access. You must also install the following fix (QFE) in order to use the feature: KB957196 - Checkin event e-mail alert notification doesn't work (download). Without the fix, turning on the new feature will result in checkin no...
Visual Studio Team System 2010 Week on Channel 9!
Brian Keller has recorded a series of interviews, some of which include demos, that are being published on Channel 9. You can find them at Visual Studio Team System 2010 Week on Channel 9. Some of the videos have already been posted. Be sure to check the page periodically or subscribe to the RSS feed to keep up with them as they come out. The week of September 29th is Visual Studio Team System 2010 week on Channel 9! We'll have 20 videos going live this week featuring interviews with the Visual Studio Team System product team including several screencast demonstrations of the latest ...
CodePlex launches support for TortoiseSVN
The CodePlex team has announced that CodePlex now supports TortoiseSVN "natively." In their blog post they explain that they are running the SVNBridge on their server, so there's no need to install anything on the client other than TortoiseSVN.Technorati Tags: team foundation server,subversion,svn,tortoise,codeplex
Team System Web Access 2008 SP1 is now available!
We've now released the final version of TSWA 2008 SP1, which had previously been released as a community technology preview (CTP). There are some fantastic new features in this release, including the ability for users without CALs to create work items. Also, this release includes 10 languages: Japanese, Korean, Spanish, German, French, English, Chinese (Simplified and Traditional), Russian, and Italian. All 10 languages are included in the download. Since the installation package includes all ten languages, you may wonder why you can choose the language on the download web page. It turns out t...
Automation with MSBuild 3.5 and Team Build 2008 recording is now available
Charles Sterling announced a new interactive forum called MVP TV earlier this month. The first event was Automation with MSBuild 3.5 and Team Build 2008. Now the recording for this event is available. The debut of MVP TV Attendance: 92 attendees Thursday, August 21st, 2008 | 9:00am – 10:00am (PDT, Redmond time) Public: This Product Group Interaction is public and open to All MVPs and all World Wide public audiences. All the Interaction of the MSDN Chats but with the richer experience of Live meeting and hosted by the recognized world technology leaders –the Visual Studio...
July 2008 release of the power tools for TFS 2008 is now available
The download is available at http://www.microsoft.com/downloads/details.aspx?FamilyID=00803636-1d16-4df1-8a3d-ef1ad4f4bbab&displaylang=en. Brian recently wrote a post about the new features: http://blogs.msdn.com/bharry/archive/2008/07/08/july-08-tfs-power-tool-preview.aspx. This release also includes some bug fixes to the build notification app. Enjoy!Technorati tags: team foundation server 2008, tfs, tfs power tools
TSWA tip: How to use the new TSWA template URL feature (initial value URL)
One of the new features we've added to TSWA for the SP1 release is the ability to create URLs that are effectively work item templates by virtue of the fact that they have the values for the work items embedded in the URL itself. Since constructing these URLs manually is really painful, we have an icon on the work item editor when you are creating a new work item that creates the URL and places it in the Windows clipboard. Bring up the new work item form, fill in whatever values you want to get automatically set each time you use the URL, and then click the "globe with chain link" icon below the Save button. ...
Team System Web Access 2008 SP1 CTP and Work Item Web Access 2008 CTP are now available
Hakan has announced the availability of the new TSWA community technology preview (CTP) in his post, What's New in TSWA 2008 SP1. Personally, I would say this release is beta quality or better, so don't let the CTP designation scare you too much. Also released is the first CTP release of what we are calling Work Item Web Access (WIWA). You may recall that we published a spec for it recently, referring to it as a "bug submission portal." WIWA provides you with the ability to have folks create work items and view work items they have created without needing a client access license (CAL) for 2008....
Spec available for “Codename TFS Bug Submission Portal”
Hakan Eskici, program manager for Team System Web Access, has posted the spec for a new power tool that's based on TSWA that is designed to help customers comply with the new licensing changes in TFS 2008 while getting the most out of the product. Please read this, as well as the other Rosario specs, and give us your feedback. Spec available for "Codename TFS Bug Submission Portal" We've published the spec for the "Codename TFS bug submission portal" power tool on Rosario Specs website (1). Note (1): Although it appears on Rosario specs website, this is a power tool for TFS 2008 (Orcas). Here's...
Team Development with Visual Studio Team Foundation Server – now in Russian
Jeff Beehler has pointed out that Team Development with Visual Studio Team Foundation Server has now been translated into Russian. It's great to see it, and I'm sure it's the product of a lot of hard work.
How Do I: Use the Builds Check-in Policy?
A year ago I wrote a blog post about a new check-in policy that we added in build for TFS 2008 to prevent "piling on" when the build is broken in continuous integration environment. That post has all of the details on how it works and even the code showing you how it was implemented.Now Richard Hundhausen has a video on how to make effective use of this new check-in policy. How Do I: Use the Builds Check-in Policy? Use the Builds Check-in Policy in your Continuous Integration Environment to let you know when somebody has broken the build. Richard Hundhausen shows you how. Presented by Richard Hun...
Visual Studio Team System Chat: April 9
Join members of the Visual Studio Team System product group to discuss features available in Team Foundation Server, Team Suite, Architecture Edition, Development Edition, Database Edition, and Test Edition. In addition, discuss what's new for these editions for Visual Studio 2008. Add to Calendar April 9, 2008 10:00 A.M. Pacific Time Additional Time Zones
Teamprise 3.0 Ships!
Martin Woodward write that Teamprise 3.0 has now been released! If you want the equivalent of Team Explorer integrated into Eclipse on any platform or need a client from Linux or Mac, you'll definitely want to check out Teamprise. Here's a quick bullet list of features that I lifted from his post. I'm particularly happy to see the new integration with Team Foundation Build. It opens up the TFS build feature to teams that need to build on other platforms, in addition to the integration with Eclipse. Martin says they have also improved the pricing structure for customers who only...
Account used to install TFS must have read permission to Active Directory
We've seen a couple of customers run into a rare problem where the account being used to set up a new Team Foundation server does not have read access to Active Directory (this does not apply to the workgroup edition of TFS). Vasu Sankaran, developer on the TFS identity management system, explains the error below. When Team Foundation Server (TFS) is deployed in an Active Directory (AD) environment, TFS makes use of the Windows Identities stored in Active Directory. For such AD identities associated with TFS, the server needs to retrieve information from AD, such as the account SID, its display name, mail...
MSBuild project analysis tool: BuildCop
Jelle Druyts has created an interesting tool and made it available on CodePlex. Just Released: BuildCop v1.0! It is with great pleasure that I'm finally ready to release another open source tool on CodePlex: BuildCop. BuildCop is a tool that analyzes MSBuild project files (interactively or during e.g. a daily build) according to a customizable set of rules and generates reports - e.g. is strong naming enabled, are certain project properties set correctly, is XML documentation being generated, are assembly references correct, are naming conventions respected, ... This has grown out of a quick-and-dirty tool ...
TSWA: Providing multiple languages in a single installation
Ed Blankenship asked a question recently regarding having multiple languages supported by the same TSWA instance. Hakan provided the answer, and both of them blogged it. Please note that this is not a supported configuration (i.e., that means we didn't test it, it could cause problems with uninstalling, etc.).Technorati Tags: team foundation server 2008,team system web access
Setting up Source Server for TFS Builds
Jelle Druyts has posted a document describing how to set up source server for Team Foundation Build. If you don't know what it is, read the MSDN magazine article that is the first link in his post.Check it out! Setting up Source Server for TFS Builds I've read about symbol servers and source servers before (in John Robbins' excellent Debugging Microsoft .NET 2.0 Applications book, for example, and also due to the recent news that Visual Studio 2008 will support source-code debugging of the .NET Framework Libraries), but never really got around to trying them out since they seemed pretty complex to set...
Team Foundation Build 2008 API documentation
The documentation for the team build 2008 object model is now available as a CHM file. Later this year, I'm told that the MSDN web site will be updated. http://download.microsoft.com/download/5/f/8/5f872c2e-4221-410b-b86e-4c3cd831b0c4/Team Foundation Build Managed Reference.chm After you download it you will need to right click it, choose Properties, and then select “Unblock” before you can view it. This documentation is newer than what Aaron posted back in August. The following are posts with examples of using the 2008 object model. Technorati Tags: team foundation server 2008, team b...
HTTP 502 error when the server tries to connect to the build agent to start a build
The following came up a couple of weeks ago, and I thought it would be worth posting for anyone else who hits the same or a similar problem. When I try to do a build using TFS Build I get this error: TF215085: An error occurred while connecting to Agent \Shopping Catalog\Nightly Build: The request failed with HTTP status 502: Bad Gateway The solution was to set BypassProxyOnLocal in the registry for TFS on the server (application tier). Note the version number, 9.0, is for TFS 2008. This does not apply to TFS 2005, because the communication with the build agent is different in TFS 2008. [...
Now available for TSWA 2008: Chinese, French, German, Italian, Japanese, Korean, and Spanish
The final set of localized versions of the Team System Web Access 2008 Power Tool is now available. Here is a list of links to all of the localized releases of TSWA. We're always interested in what you think about the localizations, too. If there are ways we can improve it, we would like to incorporate that feedback into TSWA as part of Rosario. Enjoy!Technorati Tags: team foundation server, team system web access 2008, vsts
MSBuild by Example
Sayed Ibrahim Hashimi's book, Deploying .NET Applications, contains a chapter on MSBuild. While I knew about the chapter in the book, I didn't realize that the chapter on MSBuild was available online until Eugene Zakhareyev mentioned it. If you are looking for a good way to get started with MSBuild, MSBuild: By Example is a good place to start. MSBuild: By Example Even if you have experience using an XML task-based build tool, such as Ant or NAnt, MSBuild is significantly different. In fact, MSBuild is different not only in execution but also in syntax. Therefore, to really get a feel for MSBuild, y...
Visual Studio 2008 Web Deployment Project (WDP) is now available
The new Web Deployment Project that was released as a power tool for VS 2005 did not work with VS 2008. Now there is a release of WDP that works with VS 2008. If you were using the old one, be sure to get this important update. Announcing RTW version of Visual Studio 2008 Web Deployment Projects (WDP) In December 2007, we had released Community Technology Preview (CTP) version of VS 2008 Web Deployment Projects... Thanks a ton to all of you in the community for being so active in adopting and trying the CTP versions of WDP... Since the December CTP we have been monitoring the blogs, MS Connect...
Updated post on how to filter checkin emails by paths
I've made a significant update to the following post: Adding a path filter to a CheckinEvent subscription using bissubscribe. The reason is that the paths supplied by the server aren't consistently cased while XPath is case-sensitive. The result is that your subscriptions that filter based on paths will not work reliably without additional complexity, unfortunately.Technorati Tags: team foundation server,version control,bissubscribe
Visual Studio Team System Web Access 2008: French and German are now available
A couple of days ago, we released TSWA in Japanese. French and German became available yesterday. We'll be releasing more over the coming days.Technorati Tags: team system web access,team foundation server,vsts 2008
TFSBuild.com: Build “recipes”
Grant Holliday has set up a great site for Team Build users to be able to contribute and find "recipes" to use in their builds. Check it out! TFSBuild.com Build Recipes Launched Filed under: TFSBuild.com, Team Foundation Server — Grant Holliday @ 6:32 pm I’ve been thinking for a while that there’s not a lot of guidance out there on how to get Visual Studio Team Foundation Build (aka Team Build) doing more than just a compile. My first crazy thought was that I should write a book - then I got scared when I mapped out the chapters and realised how much effort would be required an...
Visual Studio Team System Web Access 2008 in Japanese is now available
Part of our plan for the TSWA 2008 Power Tool is to release localized versions. Japanese is the first language to become available. Chinese, German, Spanish, French, Italian, and Korean are currently planned for release over the next month.Here's the download page in Japanese, along with a link to it. Team System Web Access (以前の TeamPlain) は、Visual Studio 2008 Team Foundation Server の Web インターフェイスツールです。 概要 team system web access 2008
TSWA: Hakan now has a blog
Hakan Eskici is the program manager for Team System Web Access. He's now blogging, and his first post provides some history on how TeamPlain became TSWA. A little bit about myself and Web Access Some of you might already know that I'm the Program Manager on the Web Access team in Team Foundation Server product group. In March 2007, Microsoft acquired the company I had founded with Ahmet Akkas back in 2001. Ahmet, Serkan (one of our senior developers) and I, along with our families, moved to beautiful North Carolina in June 2007 and started to work in Microsoft's Raleigh office. The story starts i...
Team Foundation Power Tools for Team Foundation Server 2008 available now!
Earlier today, we released the first version of the TFS Power Tools for TFS 2008! I want to highlight the build notification application. This tool alerts you when a build is started or completed. If the build breaks, you'll know immediately. I posted a preview of the build notification app back in September. Based on feedback, we have fixed bugs (e.g., it now properly handles the user logging out or shutting down on Vista) and made improvements (e.g., you can now disable servers in the options dialog that you don't want). See the preview post for more screenshots and details on how it w...
MSBuild Sidekick V2 beta
Eugene Zakhareyev has released a beta of the second version of MSBuild Sidekick. This version adds some unique features, including visualizing the build targets. If you've ever had to pick up someone else's msbuild project files, you'll really appreciate this feature. Here's a screenshot of the target visualization from Visualization in MSBuild Sidekick v2. You can find out more about MSBuild Sidekick v2 in MSBuild Sidekick v2 beta is available! Be sure to check out the Team Foundation Sidekick as well.Technorati tags: msbuild, team build
How offline mode works in TFS 2008 version control
Ben Ryan, a developer on the version control team, has written a couple of posts about the offline feature introduced in Team Foundation Server 2008 Version Control. The first one in particular answers some questions that have come up. When and how does my solution go "offline"? TFS 2008 adds improved support for "offline" scenarios. This blog post identifies the scenarios under which a solution will be placed in "offline" mode. more... How to make TFS Offline strictly solution-based For some users it may be a bit offputting that taking one solution offline causes all other solutions ...
WiX to be included in the Visual Studio “Rosario” release
Rob Mensching has written a post about the WiX toolset being included with the Rosario release of Visual Studio Team System. WiX is part of the toolset used to create the installation packages for Visual Studio, as well as being one of the first open source projects ever at Microsoft. Whereas Visual Studio setup projects (.vdproj) can only be built using devenv and thus require Visual Studio to be installed on the build computer, the WiX toolset supports msbuild via custom tasks.In the post, Rob goes over a series of questions and answers regarding WiX and Visual Studio to explain what's being include...
Building Ant projects with Team Foundation Build
Martin Woodward has written a post on using Ant within Team Build 2008 and 2005. He includes an initial release of the binaries and documentation. This is great for the folks using Java with TFS! Building Ant projects from Team Build With the recent release of Microsoft Visual Studio 2008 Team Foundation Server we are seeing more and more people looking to use the build capabilities of TFS (often referred to as "Team Build") to manage their Java based builds as well as their .NET ones. We have an MSBuild task available internally that we use to trigger Ant based builds and report the progres...
Web Deployment Projects (WDP) for Visual Studio 2008 CTP
[UPDATE 2/3/08] The final version is now available. I know a lot of folks have used web deployment projects (WDP) with Team Build. The WDP release for VS 2005 does not work with 2008. The web developer team has just released a Community Technology Preview (CTP) of WDP for VS 2008. Being a CTP, it's not fully tested. However, they are looking for feedback before releasing the final version in January of 2008. Web Deployment Projects (WDP) for Visual Studio 2008 - December 2007 CTP Released Based on the feedback from web development community we just released the Customer Techno...
Video on the new features in Team Foundation Build 2008
There's a great new video on the MSDN web site by Richard Hundhausen that goes over the new features in Team Foundation Build 2008. It's one of the featured videos this week. The video covers the major new features and provides a great introduction to the product. How Do I: Learn the New Features and Capabilities of Team Foundation Build 2008? In this video, Richard Hundhausen explores the new features and capabilities of Team Foundation Build 2008, including defining and managing build definitions, agents, qualities, and retention policies. Presented by Richard Hundhausen on November 20, 2007Leng...
Team System Web Access 2008 Power Tool is now available
Today we have released the final version of the Team System Web Access (TSWA) 2008 power tool! Team System Web Access provides a web interface to Team Foundation Server 2008. Here's a list of feature changes. Of course, we also fixed a number of bugs. For those of you who remember the need for the TSWA users group in the installation of the TSWA 2005 power tool, you'll be happy to know that is gone. That was something we had to add to satisfy security requirements, but we've since changed the code to handle the impersonation better such that impersonated user identities no longer need ac...
Building VS 2008 projects with TFS 2005
The question has come up a couple of times as to how to get a TFS 2005 build agent (the build agent is the service running on the computer) to build a Visual Studio 2008 solution. When you try to do it, you get the following error. Solution file error MSB5014: File format version is not recognized. MSBuild can only read solution files between versions 7.0 and 9.0, inclusive. The TFS 2005 build agent finds msbuild.exe by asking the common language runtime (CLR) for its installing directory. In VS 2008, the .NET framework version is 3.5, but the CLR remains at 2.0. The result is that the ...
Visual Studio Team System chat – December 5, 2007
Join members of the Visual Studio Team System product group to discuss features available in Team Foundation Server, Team Suite, Architecture Edition, Development Edition, Database Edition, and Test Edition. Hopefully, there will be a fair amount of discussion around the newly release 2008 version. I'm planning to be in the first chat. There will be two chat sessions. Note that I have posted the times in the Eastern US time zone. Technorati Tags: vsts, visual studio team system, tfs, team foundation server
TSWA tip: Copy a bug to quickly file a new bug in an area related to the original
Like Team Explorer, Team System Web Access does not support work item templates yet (though you can get a power tool work item template add-in for Team Explorer 2005 -- look for power tools for TFS 2008 in December). However, you can use the "Create Copy of Work Item" feature to copy a work item that's similar to the one you want to file. Then you only need to change the information that's different for the new bug and save it. To do this, click the triangle beside the work item you want to copy and choose "Create Copy of Work Item" from the popup menu. This particular feature is not available f...
Using CruiseControl.NET to trigger CI builds in TFS 2005
James Dawson previously posted a plugin for CruiseControl.NET that provided a continuous integration facility for TFS 2005, which I mentioned back in August. He's now set up a CodePlex project for it: TFS TeamBuild Task for CruiseControl.NET. You can get both the binaries and the source code from the CodePlex project.Continuous integration is now built into Team Build 2008. However, for those who have to continue using TFS 2005 for a while, projects like this provide a way to fill the gaps.Technorati Tags: team foundation server, tfs 2005, team build, cruisecontrol.net, continuous integration
Martin Woodward’s presentation on what’s new in TFS 2008
Martin Woodward has a posted a great set of slides from a presentation he did on what's new in TFS 2008. After going through all of the features other than build, he spends more than half of the slides on the build features of TFS 2008 (aka Team Build). I highly recommend taking a look at the slides, particularly if you haven't paid close attention to TFS 2008 up to this point. Team Foundation Server 2008 - What's New Talk Last night I had the pleasure of presenting to my local .NET User Group (NIMTUG) on what is new in Team Foundation Server 2008. Interestingly, most of the audience where new...
How to uninstall VS 2008 Beta 2 before installing the final version of VS 2008
There have been a few questions about how to correctly uninstall all of VS 2008 Beta 2 in order to install the final version of VS 2008. Scott Guthrie posted the steps for doing this earlier today. A subset of this list would apply if you have installed Team Foundation Team Explorer 2008 Beta 2, rather than the full VS 2008 with Team Explorer. At the end he recommends rebooting after removing everything and before installing VS 2008. From my experience, that's good advice. The only thing additionally I've typically done after uninstalling a non-RTM build is to delete the VS 9.0 registry h...
How would you prioritize features for MSBuild?
Dan Moseley, a developer on the MSBuild team, wants to know how you would prioritize features for the next version of MSBuild by asking, How would you spend $100 on MSBuild? The release of Visual Studio 2008 is imminent, which means the product teams are beginning to work on the future, and he posts about some of the features that they are considering. How would you spend $100 on MSBuild? We're currently planning for our next version (aka, "Dev10" - no code name this time) and subsequent releases. In that spirit, I'd like to do a quick poll of MSBuild aficionados to help us keep our "vision" for MSBuild a...
TSWA tip: Send an email with a work item or query results
Let's say you're going through your bugs and want to ask someone a question about one of them. You can use Team System Web Access to send that person an email containing all of the work item's information and a link to it. To email a work item, open the work item in TSWA. Go to the Tools menu shown below and choose Send as Email. You'll get a new window where you can enter the person's full email address and type a message. The message body contains a link to the work item in Team System Web Access and all of the work item's fields and contents. You can also email query results. ...
TSWA tip: Search bugs and reports
[Update 10/6/2008] In addition to the default search behavior described below, TSWA 2008 SP1 adds Outlook-style search capability, which is described here. Have you ever wanted a quick way to find the bugs containing some word? Team System Web Access comes to your rescue. In the upper left corner underneath the team project selector, there is a search box. Type in a word and hit Enter. If you want to search for a phrase rather than a single word, simply enclose it in quotation marks (e.g., "team build" or "team foundation server"). Without the quotation marks, you'll be searching for...
Turning off Just-in-Time Debugging on your servers
I saw Mac Noland's post tonight about turning off the just-in-time debugging popup window on his TFS server. We've had this problem internally. If you have a debugger installed on your computer, such as Visual Studio or WinDbg, the installation will enable just-in-time debugging such that when something crashes you'll get a window asking you whether you want to debug the problem. That's a great feature, except when there's no one around to dismiss the dialog. If you have a build computer, for example, and someone's custom msbuild task crashes in the middle of the night, you'll probably just wan...
SharePoint lists in Outlook 2007 are awesome
If you use Outlook 2007 and SharePoint, you really need to read this. I've been using this feature for the last couple of weeks. It syncs the documents into Outlook so they are available offline, you can search them, and you can edit and upload when you get back online. It's really slick. Read the post. SharePoint and Outlook – The Perfect Link Outlook 2003 introduced integration with SharePoint, allowing you to see some SharePoint information (like calendars) in Outlook alongside your personal information. In Outlook 2007, we made this a whole lot better. Here we’ll focus...
How to list the team projects created with a particular template in TFS 2008 or 2010
This question came up on an internal discussion, and I thought the answer would be useful to post. Question How we can find the list of projects created with the a particular VSTF template in TFS 2008 or 2010? In TFS 2005 we can find out programmatically as well with the query but in the new version we are not able to do so. Answer Sam Heald, a developer on the work item tracking server team, responded with the following answer. This information is no longer stored automatically in TFS 2008 and newer. In TFS 2005, a templateId was returned as an out parameter of the GetProjectProperties me...
Windows Live Writer 2008 is now available
The first version of Windows Live Writer is now available. I've been using the betas for a long time, and I think it's a great application (and it's free). I use it to write all of my blog posts. If it weren't for Live Writer, I wouldn't have written nearly so many blog posts. Windows Live Writer: Out of Beta Thank you to everyone who tried out the beta releases of Writer over the last year and gave us feedback. Over 1.5 million of you downloaded our last beta release, and your input helped make Writer the product it is today. Our goal from the start has been to help make blogging more po...
TSWA tip: Bulk edit
Sara Ford has a Visual Studio Tip of the Day series going. I thought I'd publish some tips on using Team System Web Access, and this is the first. I don't think I'll be able to do a tip per day. Calling it a "TSWA tip a few times a week" just doesn't sound that great. So I'll just leave it as TSWA Tips. In the regular Team Explorer (aka Team Foundation Client), you can't edit work items in bulk except by exporting them to Excel (at least as of Team Explorer 2008). However, you can do this using Team System Web Access. First, select the work items that you want to edit in bulk by clic...
TFS 2008 ships this month
Yesterday, Soma announced that VS 2008 and TFS 2008 ship this month. Prior to that, we had only said it would ship by the end of this year. It's going to be an exciting month. Not long after TFS 2008 ships, we're going to ship the final version of the Team System Web Access 2008 Power Tool, and it includes a few new features. I'll write more on those later. Microsoft Commits to November Release Date for Visual Studio 2008 and the .NET Framework 3.5 Microsoft expands interoperability options for partners, delivers new innovations with Microsoft Sync Framework and Popfly Explorer releases. BARC...
TFSBuildLab 1.0 for TFS 2005
I last mentioned TFSBuildLab back in August when it reached beta 2. Peter Blomqvist and Mathias Olausson have now released 1.0. For those of you who aren't going to move to TFS 2008 in the near future (it ships by the end of this year), you'll want to look into this. I also posted a list of CI solutions for TFS 2005 about a year ago. TfsBuildLab v1.0 is out there !!! Finally we are feature complete as we intended it to be from the start (download it from here) we missed out intended deadline by almost 3 weeks :( (before 22/9) but for a sparetime project it still is decent... We have now been dog...
Using VSTS 2008 memory allocation profiling
I wanted to learn about the memory allocation profiling feature that is available VSTS 2008. While the profiler was also in VSTS 2005, the profiler will now also profile memory usage in addition to performance. A very good place to start is Ian Huff's blog. He's written a number of posts about the profiler. To use profiling on an application that's started outside of Visual Studio, you must run the vsperfclrenv.cmd batch script to set some environment variables and then run your application (it's not necessary if you have the profiling GUI in VS start the application for you). See Ian's ...
Extracting the Visual Studio 2005 Team System SP1 VPC image
[UPDATE 10/10/2007] MSDN has been updated with a new set of files with the naming issue corrected (see forum post). It may take a few days for it to propogate to all of the MSDN servers. ***** Reid, a customer, sent me email about a problem with using the Visual Studio 2005 Team System SP1 VPC image from the MSDN subscription site. I forwarded the email and found out that folks are looking into it. Until it gets fixed, here's the process to successfully extract the image. The files listed for download for the SP1 image are: en_visual_studio_2005_team...
Operations Guidance for TFS
Jeff Beehler has announced that we have now published guidance for operations. In addition to all of the great information in there, it provides a great summary of TFS links (see the bottom of the article in particular). Operations Guidance for TFS The Team System Rangers have done it again. Their mission is the accelerate adoption of Team System so they're always on the look out for those things that might be blocking customers from deploying and using our tools. Based on repeated customer requests, they've been focused recently on collecting the scattered documentation from various Microsoft...
Team System Web Access for TFS 2008 CTP released
[UPDATE] The final version is now available. Team System Web Access for TFS 2008 Power Tool CTP is now available! For TFS 2008, TSWA will continue to be a power tool through the TFS 2008 release. For the release after that, it will be a part of the regular product. The final release of the TSWA for TFS 2008 power tool will happen near the time TFS 2008 ships, which we've stated is by the end of this year. The big news with this release is the support for custom controls in work item forms. When you install TSWA, you will find a subdirectory in the installation directory that conta...
Preview of the build notification tray applet power tool for TFS 2008
[UPDATE 12/21/07] The build notification tool has now become part of the TFS Power Tools for TFS 2008! It has new features and quite a few fixes (not to mention that it's a signed binary), so I've removed the attachment from this post. We would have loved to have included in TFS 2008 a build notification tray applet along the lines of CCTray for CruiseControl. However, we didn't have the time in the schedule to do it. As a result, we're going to be releasing one as a power tool. You may remember seeing the spec for this on Jim Lamb's blog. Swaha Miller, a developer on Team Build, imp...
TFS 2008: Controlling the number of threads used in uploading and downloading files
The TFS version control client object model normally uses up to eight threads from the thread pool to upload or download files. This same mechanism is also used in pending adds: Files are opened to determine whether they are binary or text, so batches are sent to the server while other batches are being examined on disk. It also uses eight threads. Some customers have encountered a problem where a firewall will consider these multiple simultaneous connections to the server to be suspicious activity and block them (e.g., interpret them as a DOS attack). In TFS 2005 there was no way to control th...
Changing TFS email notifications to link to Team System Web Access
Neno Loje has written a blog post that shows you the steps to change the links in the TFS work item alert emails into links to work items in TSWA. The standard links point you to a read-only page, which is not nearly as useful.Check it out! Changing TFS email notifications to link to Team System Web AccessTechnorati tags: tfs, team foundation, team system web access, tswa
VSTS 2005 and 2008: Building Database Projects with Team Build
Jon Liperi, a tester on Team Build, has put together the post below that explains a number of the issues around using Visual Studio Team Edition for Database Professionals (DBPro) with TFS Build. Jon previously worked on the DBPro team, so he knows his way around it quite well. Here are the issues that he covers. This information applies to both the 2005 (8.0) and the 2008 (9.0) versions of VSTS and TFS. Building Database Projects with Team Build by Jon Liperi Recently, we have seen more questions about building database projects with Team Build. It is absolutely possible to build these project...
We need your help: Patches to apply to TFS 2008 beta 2
Brian has written a post, Practicing servicing for TFS 2008, with links to six patches. We need your help in installing these patches and letting us know what issues you run into. The goal is to make servicing TFS 2008 better than it was with TFS 2005. Folks using web projects under version control in Visual Studio will notice fixes for several issues.I want to point out the patch for the build agent (aka Build SKU) in particular (the patch does not apply to Team Explorer). This patch will update a couple of assemblies (DLL files) on the build computer (aka build machine or build...
Dave McKinstry on Build in TFS 2008
Dave McKinstry has written a couple of posts on his experiences with Team Build in TFS 2008. In Introduction to Team Build 2008 for Team Build 2005 Users, he goes over the major new features and how certain things like handling workspace mappings are improved over TFS 2005. His post includes screenshots and more. It's a great companion to the basic guide post. I can't help but quote a couple parts that I enjoyed the most. If you haven't already gotten a chance to play with TFS 2008 (Beta 2), I recommend it. My experience is that it is solid and seems to work better than the RCs wor...
TFSBuildLab beta 2 for TFS 2005
I mentioned TFSBuildLab a month ago when it hit beta 1. Peter Blomqvist and Mathias Olausson have been hard at work and have now released beta 2. They expect to hit 1.0 in the near future. If you are looking for features like continuous integration and scheduled builds in TFS 2005, you'll want to give this a try. What is new in Beta 2? Service Support for tracing using trace listeners Made automatic notification registration optional Removed the need for LDAP to resolve email for notifications Admin Client Conte...
TFS 2008 Beta 2 upgrade fixes are now available
We discovered and fixed several issues that blocked some users from upgrading from TFS 2005 to TFS 2008 Beta 2. You can get the instructions and download the two updated executables at http://www.microsoft.com/downloads/details.aspx?FamilyId=C4015D2F-2383-4270-9AAD-97129590F31D&displaylang=en. Overview SYMPTOMSWhen you upgrade a Microsoft Visual Studio 2005 Team Foundation Server installation to Visual Studio Team Foundation Server 2008 Beta 2 you may receive one of the following errors: CAUSE more... For those who are interested, here are a few more details on the Team Build upgrade issues fixe...
How to construct the Team System Web Access 2005 URL to a file in version control
Grant Holliday asked for an explanation of how a Web Access URL should be constructed to for a file in TFS version control, similar to the work item links explained in the TSWA 2005 FAQ. Hakan responded with the details, which are shown below. http://[TeamSystemWebAccessSite]/UI/Pages/Scc/ViewSource.aspx?scc-item=[ItemData] ItemData is the HtmlEncoded form of the query string, such as “id=10&cs=-1” For example, if the file id is 151611, HtmlEncode(“id=151611&cs=-1”) -> “id%3D151611%26cs%3D-1” So the URL would then ...
Team System Web Access for TFS 2005 FAQ
I wanted to highlight the TSWA for TFS 2005 FAQ since it contains good information, including how to switch between Windows authentication and forms authentication, turning off forms authentication, and how to construct the URL to a work item using the work item's ID.Visual Studio Team System Web Access FAQ Technorati tags: tfs, team foundation, team system web access
TFS API: Determining if an edited file has changed
A few times over the last several months, the question has come up regarding how to determine whether a file on disk that is being edited is different that what is checked into TFS version control. Folks looking at the PendingChange object have asked about the difference between the two hash value properties. If you query for the pending changes in the workspace using GetPendingChanges() (or QueryPendingSets() if you don't want all of the pending changes for the workspace), you'll get an array of PendingChange objects. The PendingChange object has quite a few properties. Two of t...
TFS 2008: Calling custom targets and documentation for the beta 2 object model
Aaron Hallberg has a written a great post on one of the new extensibility mechanisms we've added to the Microsoft.TeamFoundation.Build.targets file that forms the backbone of the msbuild process (it's imported by every tfsbuild.proj file and contains all of the targets and properties). Aaron shows you how to have a different target called for each of the projects and solutions that you build, which allows for greater flexibility in hour your projects and solutions are built. Calling Custom Targets Within Team Build In Team Build v1 (VSTF 2005), the CoreCompile target always invoked the Build target of the...
TFS 2008: A basic guide to Team Build 2008
Patrick Carnahan, a developer on Team Build, put together the following guide to the basic, as well as a few advanced, features of Team Build in TFS 2008. It's a great way to get started with continuous integration and other features in TFS 2008. Team Build – Continuous Integration One of the new and most compelling features of Team Foundation Build is the out-of-the-box support for continuous integration and scheduling. A few in-house approaches have been built around the TFS Soap Event mechanism, most likely set to listen for check-in events and evaluating whether or not a build should be performed. ...
Download: Creating and Customizing TFS Reports
I don't often post about reporting. My last post was about sample reports for TFS from a year ago. If you are trying to understand it or just get more out of it, there are now more resources to help you. On Friday (Aug. 10, 2007), a new article on TFS reporting became available for downloading. Creating and Customizing TFS Reports Brief Description This article provides an introduction to the important concepts and step by step instructions to Create and Customize Reports for Microsoft® Visual Studio® Team Foundation Server (TFS). Overview If you’ve used Microsoft&re...
Using CruiseControl.NET to trigger TFS 2005 builds for continuous integration
I ran across the following post by James Dawson and thought it may be of interest to folks trying to do CI with TFS 2005. Of course, you'll find CI as part of the product in TFS 2008. TeamBuild Plug-in for CruiseControl.NET I've been meaning to write this post for a couple of months now as a follow-up to a session that Colin and I gave at the Microsoft Architect Insight Conference back in March, but just haven't found the time... at least, that's my excuse - anyway cutting to the chase! Since the release of Team Foundation Server (TFS) there have been several Continuous Integration a...
TFS 2008: Command line help for tf.exe now prints to the console
In TFS 2005 running help from tf.exe popped up the MSDN help browser. That was a bit lame, but we didn't allocate the time to do it right. That's been fixed in TFS 2008. Running tf.exe /? produces a list of commands, and tf someCommand /? produces detailed help on that command. Here are a couple of examples. These two commands are also new in TFS 2008. D:\>tf destroy /?TF - Team Foundation Version Control ToolCopyright (c) Microsoft Corporation. All rights reserved. Destroys, or permanently deletes, version-controlled items from TeamFoundation version control. tf destroy [/kee...
Team System Web Access: Workaround for installation problem on a non-English Windows OS
[UPDATE 8/8/07] There is now a KB article on this issue. Hakan posted the following on Brian Harry's blog in response to a customer report about encountering the following issue when installing the new Team System Web Access release on German, French, Italian or Spanish Windows. We plan to add this to the FAQ page. Symptom: You receive the following error while trying to install Team System Web Access. System.Security.Principal.IdentityNotMappedException: Some or all identity references could not be translated. (Spanish) System.Security.Principal.IdentityNotMappedException: No se...
Deleting test results from a build
In either TFS 2005 or TFS 2008, you can delete the test results published against a build (How to: Publish Test Results). However, discovering this feature may be difficult, and I didn't find it on MSDN in a quick search of the docs. What you'll need to do is to bring up the build details (aka the build report) in Visual Studio. Then expand the test results, right click on the link to the Test Run and choose Delete. Technorati tags: tfs, team foundation, tfs 2005, tfs 2008, team build
TFS 2008 beta 2: How to add a Network Service account to the Build Services group
We changed the build agent setup such that the default presented in the setup GUI is to use Network Service as the build service account. One big advantage of doing this is that the Network Service account doesn't have a password that expires, removing one annoying administrative issue. Once you install the build agent, you need to add the service account to the Build Services security group for the team project where the build definition resides. That's all explained in the installation guide and other documentation. In beta 2, however, the Network Service account for a computer cannot be added to ...
Vote for your favorite version control system to migrate to TFS
Matt Mitrik, program managers for the TFS migration and synchronization toolkit, wants to know which version control systems are most important for them to focus on. Go here and vote now. What migration tools are you looking for? I've heard plenty of requests for tools to migrate data from competitor products to TFS, and I'm trying to find out which tools have the highest demand. If you need a tool to integrate Subversion and TFS, for example, please reply to this post and let us know. Or better yet, create a new item in the issue tracker so that others can vote on the tools they want to see developed. ...
Team System Web Access (formerly TeamPlain) power tools release is now available!
[UPDATE 7/31/2007] I've updated the link with the main MSDN page for TSWA. There's also an FAQ now. We have just released Team System Web Access power tool for TFS 2005! You can download it now. Team System Web Access (formerly known as TeamPlain) is a Web interface to Visual Studio 2005 Team Foundation Server. Feature Overview Authentication Modes We hope you enjoy this release and let us know what you think!Technorati tags: tfs, tfs 2005, team foundation, web access, team system web access
Team Build Compatibility between 2005 and 2008
The following question came up today, and I thought it would be useful to post. One thing I didn't mention was what happens in the upgrade process when you move from a 2005 server to a 2008 server. The 2008 server stores in the database some properties that were previously stored either in the tfsbuild.proj (build agent computer, build directory) and workspacemapping.xml (build workspace template). As part of the upgrade process, we read those files and create build definitions for each tfsbuild.proj, build agents with the computer and build directory specified, and workspace templates on the build d...
TFS 2008: How to check in without triggering a build when using continuous integration
If part of your build process is to check in a file, such as an updated version file, you wouldn't want that checkin to kick off another build. You'd be stuck in an infinite loop. To prevent that problem, simply put the string ***NO_CI*** in the checkin comment. The code that examines a changeset to determine whether to kick off a new build will skip any changeset with that string in the comment. [Update 07/02/2008] If you are making a checkin as part of the build process, you can use $(NoCICheckinComment). That property is set at run time when the build agent starts msbuild. I had...
Team Foundation Server 2008 Beta 2: Summary of links to Team Build information
Visual Studio 2008 Beta 2, including Team Foundation Server 2008, is now available for download. As mentioned in Soma's post, Beta 2, unlike beta 1, includes the "go live" provision in the license, meaning that you can use it in production. We've been using TFS 2008 beta 2 on our main internal dogfood server now for the last two months (well, it's close to being the same as beta 2 -- it's actually an very early snapshot). You can check out the stats in Brian's post. When Beta 1 was released, I put together a list of links about the Team Build features in Orcas. If you are l...
Adding Team System Web Access to the mix
A year ago I became the dev lead for Team Build. As of this month, I'm now also the dev lead for Team System Web Access (TSWA), which is the name of the group that resulted from our earlier acquisition of devBiz Solutions, makers of TeamPlain Web Access. Hakan, Ahmet, and Serkan have joined our team in North Carolina, relocating from Turkey. Hakan is the program manager for TSWA, and Ahmet and Serkan are developers on TSWA. It'll take a while for me to catch up to Ahmet and Serkan. :-) It's great to have them on the team, and I look forward to this team delivering some great features...
How to build without having the timestamp change on every file in the build’s workspace
A question came up a couple of times recently about an issue with the timestamps on the files involved in a build always being the current time. The issue is that folks have customized their deployment process to deploy only files where the timestamps are newer. Folks then ask for an option to have get set the timestamp to the timestamp when the file was checked rather than when it was downloaded. I don't think that's the best answer in this case (and if you aren't doing a clean build, it's not an answer at all, since that will lead to botched builds). The biggest culprit here is likely th...
Visual Studio Team System Chat – August 1, 2007
The next MSDN chat is next Wednesday. I'm going to try to be on the first one. Join members of the Visual Studio Team System product group to discuss features available in Visual Studio Team Foundation Server, Team Editions for Architects, Developers, Database Pros, and Testers. There will be two sessions: Join the chat on Wednesday, August 1st, 2007 from 10:00am - 11:00am Pacific Time. Add to Calendar | Additional Time Zones -or- Join the chat on Wednesday, August 1st, 2007 from 4:00pm - 5:00pm Pacific Time. Add to Calendar | Additional Time Zones
TFS 2008: Some properties that you can use to customize your build
Martin Woodward has posted a nice list of properties from Team Build that he has found useful. While some of the properties were also in TFS 2005, quite a few are new for TFS 2008 (aka Orcas). Some of the properties, such as RequestedFor, are properties of the current build that are set by the server, and thus you wouldn't set them yourself. There are two in particular that I would like to highlight: IncrementalGet and IncrementalBuild. Setting IncrementalGet to true in your tfsbuild.proj file (it's false by default for backwards compatibility) will result in each build of that build...
CodePlex project: TFSBuildLab
Peter Blomqvist and Mathias Olausson have undertaken an ambitious project to provide things like build queuing and continuous integration on top of TFS 2005. While we have these features in TFS 2008, this project provides some of these essential features for use with your current TFS deployment. TFSBuildLab - Project Description TFSBuildLab is a project to simplify the day to day operations when using automated builds and Team System. This project handles common Team System issues such as: - Continuous integration builds- Scheduled builds- Build queueing- Manual and automated build cleanup- TFS Event noti...
TFS 2008: Build agent configuration options
While some of the build agent properties are available in the VS GUI, buried in the tfsbuildservice.exe.config file are a number of options that control key aspects of the build agent and the build. This file existed in TFS 2005, but it had fewer options. While you don't have to change anything for the build agent to work in the normal case, there are options here that will help you get more out of the product. In future releases, these types of options will be exposed in better ways (e.g., GUI). Everything described below applies to TFS 2008 Beta 2 through TFS 2008 RTM. Many of these...
Survey: Which databases should Visual Studio Team Edition for Database Professionals support?
Speaking of VSTS for DB Pros, Brian Keller is taking a survey. If you have an opinion on this, please share it! Survey: Which databases should Visual Studio Team Edition for Database Professionals support? The team who builds Visual Studio Team Edition for Database Professionals is collecting input on which 3rd-party (non-Microsoft) database providers they should be partnering with for future releases. Microsoft SQL Server 2000 and SQL Server 2005 are the two databases supported in the current release, but the team is investing in infrastructure which would allow partners to build support f...
Dave McKinstry on building database projects
Dave McKinstry has written a three-part series on building database projects. He includes information on building in TFS Build as well. Check it out!Technorati tags: tfs, team foundation, team build, vsts for database professionals
Why can’t I create a Team Project called name.com?
Recently this question came up on an internal mailing list. Dennis Habib, a developer on TFS, responded with the following. This is because '.com' is a restricted file type. Windows SharePoint Services (WSS) has a list of extensions that it will not accept and will fail (there are quite a few), but there is no way to get this list from WSS programmatically from the client machine so we can't give you a warning (the list is configurable). You need to either remove that name from the restricted list in WSS Central Administration, or choose a different name.I didn't know that, so I thought I'd pass it along.&n...
How to build projects in Team Build that only Visual Studio can build
Aaron has written a great post on using Visual Studio (devenv) from within Team Build as part of the build process. If that sounds strange, it's necessary because there are projects that Visual Studio can build, but msbuild cannot. Projects in this category include Visual Studio setup projects (.vdproj), SQL Reporting Services (SRS), and BizTalk. Some projects may never be supported outside of msbuild, as is the case with the setup projects (WiX works msbuild, if you want a setup technology that doesn't rely on Visual Studio). We have documentation, such as this walkthrough on buildin...
Get: Date and time, read/write vs. read only
Periodically we get the following questions about get. The answer to each is no for both TFS 2005 (v1) and TFS 2008 (Orcas). It's something we considered doing in v1, but we ended up cutting it. It remains on the list of features to consider for the future. If you have opinions on this or other version control features, you'll want to let Mario know.Technorati tags: tfs, team foundation, version control
Goodbye to a 200-year old Osage-orange tree
This was a 200-year old Osage-orange tree on what used to be part of my grandfather's farm in Charlotte, NC. This former hay field is now a subdivision (the farm house is directly across the road in the grove of trees in the distance behind the scraper). The house I grew up in is adjacent to the farm (way over on the opposite side of the farm -- not pictured here). When I took this picture in August '03, construction was underway to turn the former field into a subdivision. Precautions were taken during construction to preserve the tree as a centerpiece for the new neighb...
Orcas: Unattended installation of the build agent
You can install the build agent (aka Build SKU) without going through the setup UI if you do the following. Thanks to Tony Edwards for this information. Edit the msiproperty.ini. Note that as of Beta 2, the ones that are in there are bogus and are not used. You have to add two new ones. This will be fixed before the release of TFS 2008. VSTF_LOCAL_DOMAIN=corpdomain VSTF_LOCAL_USERID=someaccount If you then run setup silently, setup /q all of the chained installers get invoked silently and the install succeeds. Unattended installation is also supported for Team Explorer.&...
Keyword expansion in TFS
Periodically, the topic of keyword expansion comes up, which TFS (at least through 2008) does not support. At one point during the v1 product cycle, it was a planned feature and was partially implemented. However, there are lots of challenges to getting it right in TFS version control, and it wasn't worth the cost to finish the feature. As a result, we ripped it out, and TFS does not support keyword expansion. Since it's not supported in the product and not likely to be supported any time soon, folks gravitate toward the idea of using checkin policies to implement keyword expansion. ...
How to enable code coverage without a test list
Aaron pointed out this post by Ben Day that talks about using the RunConfigFile property with a build that runs tests without using test lists (.vsmdi files). It all boils down to looking like the following (in Orcas, you would specify the $(OutDir) part in the TestContainer's Include attribute, whereas you don't in the TFS 2005 power tools TestToolsTask TestContainerInOutput element). <ItemGroup> <TestContainer Include="$(OutDir)\HelloWorldTest.dll" /> </ItemGroup> <PropertyGroup> <RunConfigFile>$(Solution...
New home for the AssemblyInfo task
The AssemblyInfo task has a new home, because the CodeGallery portion of GoDotNet is being phased out. You can now find it here in the GotDotNet User Samples.The AssemblyInfo task is useful for updating assembly version numbers as part of your build. Aaron Hallberg explains how to use it with Team Build in his post, Team Build and the AssemblyInfo Task.Technorati tags: msbuild, team build, team foundation
MSDN chat with the VSTS (including TFS!) product group is today!
The first chat is at 1:00 PM Eastern time, so I'm planning to be in that one. Join members of the Visual Studio Team System product group to discuss features available in Visual Studio Team Foundation Server, Team Editions for Architects, Developers, Database Pros, and Testers. In addition, discuss what's new in the upcoming Orcas CTP. We will be holding two sessions: Join the chat on Tuesday, July 3rd , 2007 from 10:00am - 11:00am Pacific Time. Add to Calendar | Additional Time Zones -and- Join the chat on Tuesda...
V1.0 of the Migration and Synchronization Toolkit has been released!
Matt Mitrik, program manager for TFS migration and synchronization toolkit, has announced the release of version 1.0. Note that it also includes the source code so that you can extend it as well. Check it out! V1.0 of the Migration and Synchronization Toolkit has been released! The first complete version of the Migration and Synchronization Toolkit has been released on CodePlex! To get the latest source code, including the complete reference implementations, please visit the CodePlex page for the Toolkit: http://www.codeplex.com/MigrationSyncToolkit In addition to updating the source code and re...
Orcas: Scheduled builds now support building even when there are no changes
Back in February, I wrote a post on the build scheduling feature that we've added for Orcas. In that post, I stated that we designed it such that the scheduled build only occurs if there has been a checkin that affects the build. Based on feedback, we changed it so that you have the option to force the scheduled build to run even if nothing has been checked in. I've updated the original post to include the feature change. If you look at the bottom of the dialog, you'll see there is a checkbox that allows you to have the scheduled build always run. As always, we appreciate your feedback! ...
Specs for a CCTray equivalent for Team Build and TFS Hosting
Jim Lamb has posted a couple of specs recently. The first is a Windows tray app that notifies you when builds complete, like CCTray does for CruiseControl.Net. Due to the time constraints of the Orcas release, we were not able to implement this for the product, but we are considering releasing it as a power tool for Orcas, in addition to including it in Rosario. Rather than lots of dense text, the spec is really just a series of drawings of the UI, so please take a look. Build Notification Applet Well, we've worked up an initial design for a notification applet that would run in your tray (er, I me...
Outlook 2007 macro to create work item and changeset hyperlinks
Richard Berg updated the Outlook macros I posted nearly two years ago to work with Outlook 2007. These macros will convert the selected number into a hyperlink to that work item or changeset. I have them hooked up to Alt+W and Alt+C for work items and changesets, respectively. Outlook macro for work item and changeset hyperlinks -- updated for 2007 When I upgraded to OL2007, Buck's great little macros stopped working. Today, I finally got the guts to ask the Outlook guys what they broke improved. The answer was simple enough. I'll let the code do the talking: more... Technorati ...
Tortoise SVN for TFS: Making the real thing work and a clone
Periodically, the topic of having a Tortoise SVN-like client for TFS comes up. The CodePlex team announced yesterday that they are writing a free "bridge" to make the real Tortoise SVN work with TFS. It's an interesting approach. CodePlex to support TortoiseSVN The number one new feature request from users is for CodePlex to support Subversion. Specifically what users are telling us they want is the features and experience they get when using TortoiseSVN as a source control client. It is important to us on the CodePlex team to provide our users the features they want and need to have the...
SDC MSBuild tasks library is now on CodePlex (moved from GotDotNet)
Last August, I posted a set of links to sites with MSBuild tasks for all sorts of things you might need to run your build. The SDC Tasks Library, which was part of Microsoft Services (UK) Enterprise Solutions Build Framework (SBF) on the GotDotNet, is now on CodePlex. SDC Tasks Library Project DescriptionThis is the latest version of the SDC Tasks for .NET 2.0. The SDC Tasks are a collection of MSBuild tasks designed to make your life easier. You can use these tasks in your own MSBuild projects. You can use them stand alone and, if all else fails, you can use them as sample code. There are ov...
Viewing test results in a web browser
Rido posted a cool way to see your test results from a build without having to copy the information locally and view it in VS. Pretty cool! TestResults Reports in TFS Builds If you use TFSBuilds with VS UnitTests, you know how to inspect the TestResults: you must download the whole directory to your local machine, and sometimes this folder could be pretty huge. So, if you want to check the error details of your tests, you can use my tool trx2html to convert the *.trx files to html, so you can see the reports with any browser. Here are the instructions in 3 simple steps: 1) copy the RidoTasks.dl...
Chicago VSTS Users Group
For those of you in the Chicago area that use Team System, Clark Sell will be presenting at the Chicago VSTS Users Group meeting. It should be a great time to learn more about VSTS! Chicago VSTS Users Group, Round 2 Since I am speaking this time, I can't help but self promote can I? Right now I am in the middle of sketching out content and I would love nothing more than to hear from you. While I have a few tricks up the ole sleeve please ping me and share what's on your mind. Now for the official blurb!! Join us for ROUND 2 of the Chicago Visual Studio Team System User group! Microsoft Visual Studio...
Update to “How to run tests in a build without test metadata files and test lists (.vsmdi files)”: Test Categories
Pierre Greborio, a developer over in MSTV, has contributed a great new feature to the power tool task that allows you to run tests without .vsmdi files: test categories. Those of you who have used NUnit are probably familiar with the Category attribute. Test categories allow you to execute specific groups of unit tests. To tag a unit test method as belonging to a category, just add the Category attribute. Unlike the test container feature, the test category feature will not be in Orcas (if you'd like to see it in a future release, be sure to let these folks know). The new version...
Guidance for Structuring Team Projects in TFS 2005
Brian Keller points out that Doug Neumann's Guidance for Structuring Team Projects is now available on the Microsoft Team Foundation Server Branching Guidance CodePlex project. Guidance for Structuring Team Projects - Doug Neumann - Microsoft Corporation Introduction One of the most important considerations when looking to deploy Team Foundation Server within your organization is how you will employ the “Team Project” concept. It can be very tempting to jump in and immediately start creating Team Projects to satisfy every whim of the users in your organization. However, restructuring existing team ...
Using an ASP.NET TFS data source
Kannan Sundararajan has written a couple of posts on how to use TFS as an ASP.NET data source. If you are interested in displaying TFS data in ASP.NET-driven web pages, you'll want to check it out. First he shows you how to build the data source and gives you the code that you need to build the dll. TFS Data Source ASP.NET Control While learning ASP.NET for developing the RTE for MSDN Forums I had to interact with multiple teams and provide them with status reports on the work items. Some of them were not using TFS yet for that code base. So I wanted a way to easily write a TFS report, send the url to al...
Orcas Beta 1 has shipped – summary of Team Build beta 1 features and links
As you probably already know, Orcas Beta 1 has shipped. Internally, the product team is focused on finding and fixing bugs for beta 2 (and has been for nearly a month now). The release includes a Virtual PC image with all of Visual Studio Team System plus Team Foundation Server, which you can download now. There's also an image that has only VSTS on it, but that's not nearly so interesting, right? ;-) Be sure to read all of the instructions on the download page. The release is in the form of a base image, which was also used for the March CTP, and a differencing disk image with the Orcas...
Visual Studio Team System chat – April 27, 2007 (this Friday)
Join members of the Visual Studio Team System product group to discuss features available in Visual Studio Team Foundation Server, Team Editions for Architects, Developers, Database Pros, and Testers. In addition, discuss what's new in the in the Visual Studio code name “Orcas” Beta 1 releases for Team Suite and Team Foundation Server. Join the chat on Friday, April 27th, 2007 from 10:00am - 11:00am Pacific Time. Add to Calendar Additional Time Zones [UPDATE 4/26/2007] There's now a second chat on Friday. Join the chat on Friday, April 27th, 2007 from 4:00pm - 5:00pm Pacific Time. ...
TFS Migration and Synchronization Toolkit pre-release published on CodePlex
Matt Mitrik, the program manager for the TFS migration tools, has announced the availability of the first pre-release version of the Team Foundation Server migration and synchronization toolkit. If you are looking into how to migrate away from a different bug tracking or version control system, this is where you'll want to start. Be sure to let Matt and company know what you need in order to be successful! Migration and Synchronization Toolkit Prerelease Published on CodePlex A prerelease of the Migration and Synchronization Toolkit has been released on CodePlex! If you are interested in seeing the ...
How quaint: 1,000,000 files and 10,000 changesets
I wrote posts when we hit 1,000,000 files (Nov. 18, 2005) and 10,000 changesets (Sept. 26, 2005) on the DevDiv server. When you look at the April 2007 statistics (April 18, 2007) for that server, we're at 77,658,652 files and 204,556 changesets. Clearly, that's a huge change in roughly 18 months. The file count climbs dramatically every time we add a new branch. A full branch has about 3 million files. Normally, we add a partial branch (1 - 2 million files). So nearly all of the growth in files comes from creating new branches. The increase in the number of changesets is largely du...
VSTS Testing: Using Fiddler to record VSTS web tests
Sean Lumley, a developer on the VSTS web test team, has written a series of posts on using a new version of Fiddler to record web tests. Sean worked with Eric Lawrence, who developed Fiddler, to incorporate new features that make this process much easier than in the past. If you do any web testing, you'll want to check this out. Here's a high-level description from Ed Glas, who leads the VSTS web test team. By the way, check out Ed's list of web and load test improvements for Orcas to see what's coming in the next release. We have released to web a new version of fiddler with a grea...
Configuring Visual Studio 2005 Team Foundation Server with Windows SharePoint Services 3.0
[UPDATE 7/26/07] Final guidance is now available. Brian Keller has posted information on how to get WSS 3.0 to work with TFS 2005, which has been a very popular request. This approach has been designed such that the server will still be serviceable after the change (i.e., you'll still be able to apply patches and upgrade to Orcas). Configuring Visual Studio 2005 Team Foundation Server with Windows SharePoint Services 3.0 Now that Windows SharePoint Services 3.0 is available we have received several inquiries from people wanting to use WSS 3.0 with Visual Studio 2005 Team Foundation Server. ...
TFS tools on CodePlex (April ’07)
Sébastien Monteil, C# MVP, sent me email about a tool on CodePlex called Fissum, which is a tray app that shows your work items. That reminded me that back in September I wrote a post listing the tools for Team Foundation Server on CodePlex. So I thought this would be a good time to post a new list. It's great to see that the list has gotten quite a bit longer! It's in popularity order, according to the search that I did on CodePlex. Microsoft Team Foundation Server Branching Guidance - Microsoft Team Foundation Server Branching Guidance Team Foundation Serve...
VSTS International Survey
Aldo Donetti, lead PM on the VSTS globalization team, sent out email today about the newly released VSTS International Surveys. These complement the previously released English language survey. There are both language-specific and some country-specific surveys. If you use VSTS in one of the languages and/or countries below, it would be helpful to us for you to take the survey and let us know your opinion. Japanese = http://c2.microsoft.fr/surveyIntlVSTS/?elng=1041 Simplified Chinese = http://c2.microsoft.fr/surveyIntlVSTS/?elng=2052 Traditional Chinese = http://c2.microsoft.fr/surveyIntlVSTS...
Configuring Team Foundation Server to use fully-qualified domain names
This week the following question came up. I've seen this come up before, and there are probably forum threads on it, but I figured I'd post it here. Bill Essary provided the answer to the question. As always, keep notes on what you do so that you can undo it if necessary. Question Is there a way to configure TFS to use fully-qualified domain names (FQDN, e.g., tfsserver.mycompany.com) for TFS, WSS, and Reporting Services? Answer 1) Run "tfsadminutil activateat <FullyQualifiedDomainName>" 2) Update the following registry key with the FQDN: HKEY_LOCAL_MACHINE\SOFTWARE\Micr...
Better integrating other build tools into your build
Aaron Hallberg wrote a great post today showing how to use a custom task to better integrate other build tools, such as devenv (aka Visual Studio), as part of your build in Team Build. Building Non-MSBuild Projects With Team Build Building non-MSBuild projects in Team Build has never been a particularly nice experience... You can make it work, typically by invoking DevEnv or some other tool using an Exec task, but you don't get any output in your build report or build log, etc. Additionally, it was recently pointed out to me (by D. Omar Villareal from Notion Solutions) that when a build type is se...
Version Control Server blog: Orcas destroy feature, merging with labels
The Version Control Server blog has shown some signs of life. Bill Tutt has written a couple of posts. The first one is about the Orcas version control feature that lots of customers have requested: destroy. The destroy command, which is only available from the tf.exe command line, will permanently remove the specified files and folders from your database (delete just hides them really). Destroy: A new feature for Orcas Destroy gives you the ability to permanently delete version control files/folders from TFS. It can also be used to destroy the file contents while preserving the change s...
Stop piling on when the build breaks: Build checkin policy for Continuous Integration in Orcas
Last fall, Clark Sell wrote a blog post called Stop, the build is broken!! that introduced a checkin policy that reported errors when the build was broken. If you are using continuous integration where every checkin starts a build, you want folks to stop and fix build breaks when they occur, rather than pile on more checkins and perhaps make the problem worse (or at least harder to sort out). Since we've added support for continuous integration in Team Build for Orcas (screencasts, demo), we thought that it was a really great idea, and we've added a simple checkin policy in Orcas Team Build that d...
Orcas: Unit testing to be available in Visual Studio Professional
Naysawn Naderi wrote a post today stating that many of the unit test features in Team System will be included in Visual Studio Professional in Orcas. Here's the entire post, but I've highlighted part below that I think you'll want to read and perhaps provide feedback to the team as to your opinion. If folks want this, you may want to open an item on Connect and then post here (or somewhere else) so that other folks can vote on it. Before you get too excited, beta 1 isn't out, and it isn't standing at the door waiting to be released. I think that comment is just there so that whenever it does co...
Outlook 2007: Viewing all RSS feeds in a single folder like an RSS “inbox”
Since I've started using Outlook 2007 to manage my RSS feeds, I've wanted to have all of the posts show up in a folder, much like new mail shows in up the inbox. I don't like have to scroll through the list of folders and visit each one containing an unread post. It's just too tedious unless you have only a couple of feeds that you read. So, I finally set up an Outlook Search Folder to give me the folder view I've wanted. Here's what I did. Enjoy! Technorati tags: outlook 2007, rss, search folders
VSTS profiler: Installing only the command line tool
I'm posting this mostly to remind myself of where it is. This came across on the internal VSTS discussion alias today. Visual Studio Profiler has a standalone installation: look for vs_profiler.exe in the Visual Studio installation CD/DVD. Installing that package allows users to collect, analyze and report performance data from command line. The package does not include any GUI. It is light-weight installation, suitable for production or testing environments. See the following article for more details on how to profile applications from command line: http://msdn2.microsoft.com/en-us/teamsystem/aa718...
How to get a complimentary copy of Visual Studio 2005 Standard Edition
According to the following Microsoft web page, you can get a complimentary VS 2005 Standard Edition by attending "labcasts." You'll have to go to the web page and read the rules, etc. I thought I'd pass this along, since I stumbled across it tonight. The Mouse is Mightier than the Sword Defy All Challenges With Microsoft Visual Basic 2005 -- Microsoft Labcasts Show You How A Hands-On Experience Interested in leveraging your existing development skills to become more versatile and productive? Attend our new Visual Basic 2005 Labcast Series. Experience for yourself how to turn Microsoft Visual Basic 2...
VSTS future releases: Orcas, Rosario, and Power Tools
A new high-level roadmap for Orcas, Rosario, and Power Tools is now available. The Visual Studio Team System Future Releases web page covers these topics at varying levels of detail, with the greatest amount detail being supplied for Orcas, of course. The Orcas TFS information is basically the same as what we've published before. Here's what it says about Rosario. Visual Studio Team System code name "Rosario" The next major release of Visual Studio Team System is code-named “Rosario” and will be released following the “Orcas” release. In this exciting release, we will be del...
Web interface now available for TFS: Microsoft acquires TeamPlain
We have never had a web interface for Team Foundation Server work item tracking, much to the astonishment of our customers. Well, there's a fix for that now. And you can download it today (see below for details). Brian Harry wrote a post this morning about the acquisition of TeamPlain. Microsoft Acquires TeamPlain! Today we are announcing that Microsoft has acquired DevBiz Business Solutions, the makers of the popular TeamPlain Web Access for Team System. TeamPlain is a web front end for VSTS that enables users to access the majority of TFS functionality from within a Web browser. The f...
Vista sidebar build monitor and PowerShell scripts for Team Build Orcas
Jason Prickett, a developer on Team Build, has written some very nice posts. All of these posts only work with Team Build Orcas. The first one shows a very cool Vista sidebar which Jason has fiddled with a while back as a side project and finally got around to finishing it off and making it available. His post has a screenshot as well. Monitoring Build Status in your Windows Vista Sidebar So, I have been wanting to create a sidebar gadget for a while, but I also wanted it to be something useful. In this post I have attached the source code for a sidebar gadget that monitors the build status of...
Aaron’s back and has new posts on Team Build
Aaron Hallberg took a month off after the birth of his daughter, Stella. Now that he's back, he's got a couple of interesting posts. The first one applies to TFS 2005 (aka v1) and shows you how to pass custom properties to each solution that you build. It's something that a lot of folks have needed to be able to do, but the solution with v1 is not good. If you choose to do this, you will have to fix your build when you upgrade to Orcas (notice that I didn't say if you upgrade to Orcas ;-)). In Orcas, we've made this really easy to do, so all of this only applies to TFS 2005 (v1). Passin...
Guidance on using branches in TFS version control
Jeff Beehler announced the initial release of guidance on using branching and merging with your development process with TFS. This has been a pretty popular request from folks. Branching guidance now available I'm extremely excited to announce the availability of Branching guidance for Team Foundation Server. This was a collaborative effort between the TFS product team and members of our "Ranger" program who are focused on accelerating adoption of V1. While the product documentation will tell you how each of our tools works, it doesn't provide insight into the best practice usage of each. ...
TFS shipped one year ago today!
As Jeff Beehler points out, we shipped TFS one year ago today. In the intervening time, we reorganized and completed the TFS development work on Orcas (minus a few design change requests (DCRs)), which you can try out in the March Orcas CTP (since it's based on TFS code from January, not everything is in there, such as build scheduling). If you want to see a demo of the Orcas Team Build features, check out this Channel 9 interview with Jim Lamb and me.tags: tfs, team foundation, orcas
Orcas Team Build: WCF web services replace .NET remoting
In Visual Studio Team Foundation Server 2005 (v1), the communication from the application tier (AT) to the build computer used .NET remoting. This was the only component in Team Foundation Server that used .NET remoting, as all other communication used web services (see Team Foundation Server Security Architecture). As part of the .NET 3.0 framework that shipped in the Vista timeframe (the Orcas framework is .NET 3.5 while VS 2005 shipped .NET 2.0, if you are trying to keep the version numbers straight), Windows Communication Foundation (WCF) introduced the ability to create web services that run with...
New add-in: Viewing other users’ pending changes from within Visual Studio
Fairly often, someone asks for the ability to see the pending changes in the system from within Visual Studio. Running "tf status /user:* $/ /r" (or whatever you want) just isn't appealing to everyone. Ognjen Bajic posted about Ekobit's new free VS add-in that will allow you to view the pending changes in the system from within Visual Studio. List Pending Changes Browser for Microsoft® Visual Studio® 2005 Team Edition for Software Developers(List Pending Changes Browser is a free software ( licence agreement )) If you have ever needed to find out who has checked out files from your project on the...
Channel 9 interview and demo of Orcas Team Build
The interview, which contains a demo, has finally been posted (you may remember it being mentioned in December). I'd like to say thanks to Brian Keller for doing this! Continuous Integration with Team Build “Orcas” Jim Lamb and Buck Hodges on the Team Foundation Server team show off the new Continuous Integration support they are building for the "Orcas" release of Team Foundation Server! ‘nuff said. Check out the demo! see the video... This demo was done with a build near the end of the feature crew for CI, and I'm happy to say that it went really well (a demo is usually a good test!)....
Accessing Team Foundation version control from Ant and Java-based CruiseControl
Martin Woodward of Team[rise announced the Ant and Java-based CruiseControl support for Team Foundation version control in his post on the release of Teamprise 2.1. There's lots of good stuff in there, but this stuck out at me in particular. If you are using TFS and Java, this is a great addition. They've even made the Ant and CruiseControl support available for anyone, not just Teamprise customers! Teamprise 2.1 Released Yesterday we made version 2.1 of Teamprise publicly available. If you've previously installed Teamprise, then I recommend that you upgrade to...
Configuring the build to use the version control proxy
If you have a version control proxy at a remote site and you wish to have Team Build use the version control proxy, you'll need to modify the registry of the account that's running the build service on the build computer. Here's what you'll need to put into the registry. You'll need to change "someproxy" to your proxy's name. Also, if you need to do this with Orcas, you'll need to change 8.0 to 9.0 for this to have the desired effect. Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\8.0\TeamFoundation\SourceControl\Proxy] "Enabled"="True" "U...
I’m in Redmond
I don't travel much. It's been almost exactly a year since I was in Redmond. In March 2006, Ed Hintz and I gave a presentation on version control.This time Jim Lamb and I are here to learn about some of the internal build systems as part of our planning for the future. Well, Jim's here to party with the PMs as well. I just get to go to meetings. :-(
TFS Workspaces: 2005 and Orcas
Martin Woodward has done a great job explaining workspaces and working folder mappings in a pair of recent posts. For those who are new to TFS or haven't taken the time to think about the concepts and uses, it's a good idea to read them. While his posts apply to both Team Foundation Server 2005 and Orcas, version control adds two new advanced capabilities to working folder mappings in Orcas. I call them advanced because many users won't have any need for them, as with Martin's comment about not having a need for cloaks at TeamPrise. However, if you need these features, they are really ...
TFS migration toolkit spec posted
The Team Foundation Server migration toolkit spec has been published. Particularly if you are interested in writing version control or work item tracking conversion tools, be sure to check it out and give them feedback.tags: tfs, team foundation, migration, version control, work item tracking
Eric Lee’s Orcas Team Build Screencasts
Eric Lee of Counterpunch Software (former Softie) has started posting about Orcas features in the March CTP.First, he goes through a list of new features with some screenshots. A Baker's Dozen of New Features in Orcas There is nothing like having a new version of Visual Studio to play around with :) Not that Visual Studio 2005 is all that old, but the March CTP of Orcas was just released. I picked up the VPC version last night and gave it a whirl. So far it looks great! I was expecting a very small upgrade to VS 2005, but there are some really substantial features here. Here are a few features that caught m...
How to enable a checkin policy via the version control API
I recently needed to test a new checkin policy that I wrote. In order to do that, I needed to enable a checkin policy for the unit test's team project using the version control API. I was a little surprised when it wasn't quite as obvious as I had hoped, and I had to poke around in the source to figure it out. So, I thought I'd post the code snippet. using Microsoft.TeamFoundation.TeamFoundation.Client; using Microsoft.TeamFoundation.VersionControl.Client; &nbs...
Visual Studio 4.0 SDK is now available (includes updates to TFS extensibility documentation)
The Visual Studio 4.0 SDK was released today. Here's the announcement. On behalf of the VS Tools Ecosystem team, we are pleased to announce that after months of hard work, we have completed shipping the VS SDK 4.0 RTM release! We have done tons of work to make this release friendly to developers who are new to Visual Studio extensibility. It is available for immediate download on the Microsoft Download Center. We are excited to present some of the new features included in this release: Here's what's new in it for TFS in particular. Team Foundation Server Extensibility tags: vs, v...
Orcas March CTP is available now and includes new Team Foundation Server
Here's the announcement. Please download the TFS Virtual PC image and let us know what you think. Except for build scheduling, this CTP contains all of the new Team Build features, including continuous integration. We are excited to announce that the Visual Studio Code Name “Orcas” March 2007 CTP is now available publicly to all customers! This CTP is being released as both a Virtual PC (VPC) image and Installable Bits for both VSTS and TFS. If you wish to use the Virtual PC image you will need Virtual PC or Virtual Server to run this image. You can use Virtual PC 2004 or Virtual PC ...
Schema for the WorkspaceMapping.xml file
The WorkspaceMapping.xml file is one of the files generated when creating a new build type. Those of you who've had to customize a build are probably familiar with the TfsBuild.proj file, which is the top-level file used to orchestrate the build.The WorkspaceMapping.xml file is used by one of the custom tasks to create the TFS workspace that contains the files to be built. In version 1 of Team Build, you must edit the WorkspaceMapping.xml file in order to change the mappings used by the workspace created for the build (in Orcas, you can do this in the GUI, and this file is no longer generated or used)...
Transcript from the Feb. 7 VSTS MSDN Chat
Below are highlights from the Feb. 7 VSTS MSDN Chat (the full transcript is attached to the bottom of this post). I hadn't participated in one in a quite a while. We got quite a few questions, and there were lots of folks from the product team on hand to answer the questions. Keep an eye out for the next one. General JManning (Expert):Q: Is there an SP2 expected between now and orcas?A: We have not announced any plans for a SP2 JManning (Expert):Q: Are there any plans to make VSTS work better in Vista limited user account mode? It seems like a step backwards to have to run as adm...
VSTS Webcasts: Licensing, development, TFS, and more
Adam Gallant is putting together a series of webcasts on VSTS topics, including one on licensing (licensing always seems to generate plenty of questions). The webcasts will occur over the next couple of months. His post has all of the details. New VSTS WebCasts... more...tags: vsts, visual studio team system, tfs, team foundation
Jeff Atwood’s Team Foundation Server Event Subscription Tool
Jeff has posted a nice GUI for creating event subscriptions. This tool makes the process less arcane and error prone. Check it out! Team Foundation Server Event Subscription Tool To set up advanced subscriptions, you needed to use bissubscribe.exe. This is problematic, because the command-line syntax is complicated, and also because bissubscribe.exe is only available on the Team Foundation Server. To address this deficiency Naren posted a GUI tool that lets you create Work Item Event Subscriptions in July 2006. I took that tool and modified it so that it supports all event subscriptions, along with a...
Team Foundation Power Tools version 1.2 (aka TFS Power Toys)
We are happy to announce the release of version 1.2 of Team Foundation Power Tools (formerly known as Power Toys). This version includes some bug fixes to previous power tools, support for Vista, and adds the following new functionality: Please note that the Process Template Editor has some additional pre-requisites, they are identified on the download page. The Power Tools MSDN Forum is available for discussing issues and requesting enhancements. NOTE: If you go to the download page tonight, you may still see the old one. There are still some MSDN servers that haven't...
Radius: reporting tool from 90 Degree Software
Ameya recently wrote about the new Radius tool from 90 Degree Software. I stumbled across a new Channel 9 video demonstration of it: Radius: What. How. Why. If you use or are interested in the reporting feature of TFS, this may be helpful. Technorati tags: tfs, team foundation, reporting
CodePlex: Vote on the features and fixes you’d like to see
The CodePlex team has posted about the latest update to CodePlex and encourage you to vote on what you'd like to see in upcoming releases. CodePlex is uses provides a hosted version of Team Foundation Server. New CodePlex Version! I know this is a few days late, but as of Jan 30th we are running a new version of CodePlex! Some of the highlight features are: More importantly, the features we added have addressed 143 user votes! Thanks to everyone for telling us what is important to you. Don't forget to keep voting, because we need to know what you want in the upcoming versions: http://www...
A quick guide to fixing problems after installing Team Foundation Server Service Pack 1 (SP1)
Neno Loje, an MVP, recently posted about dealing with HTTP 503 or 403 errors after installing TFS SP1. Now Brian Harry has written post that should serve as a quick guide to fixing the common problems that occur when installing TFS SP1. See Problems installing TFS SP1 for a table that shows each issue, its impact, and how to deal with it. If you are wondering whether you should install the service pack, Brian posted the list of issues fixed here and here.Technorati tags: tfs, team foundation, service pack 1, sp1, tf30059
You can schedule builds in Orcas
When we posted the Orcas Team Build Continuous Integration Spec, you may have noticed that there was no support for scheduling builds. We implemented build scheduling as a Design Change Request (DCR). That meant that we had to present a justification for the feature, a spec, and how long it would take to implement and test. By the time we had the DCR meeting we were nearly done with it. That made the conversation about the effort involved go a little more smoothly, since we could talk about it largely in the past tense. Here is an edited version of what Jim Lamb, our PM, put together for t...
How many people do we have working on Orcas?
Lorenzo Barbieri, an MVP, pointed out the Orcas splash screen spec that's been posted. I'm guessing that's one of those things that leads to people believing we have an infinite supply of people to develop products, leading to comments like, "I can't believe you still can't do X!" X is everything from viewing labels in history to rolling back changes to assigning work items to groups of people to continuous integration (wait, we've got that in Orcas :-). Here are some excerpts. The Splash Screen typifies some of the worst aspects of the Visual Studio User Experience...
Visual Studio Team System chat on Wednesday Feb. 7
On Wednesday, join members of the Visual Studio Team System product group to discuss features available in Visual Studio Team Foundation Server, Team Editions for Architects, Developers, Database Pros, and Testers. In addition, discuss what's new in the latest Community Technology Preview (CTP). Join the chat on Wednesday, February 7th, 2007 from 10:00am - 11:00am Pacific Time. Add to Calendar Additional Time Zones
Generating documentation from code with Team Build
Brian Keller replied to an internal email thread discussing generating documentation from code as part of a build. If you are looking to do the same, these links should be helpful. Here's what Brian wrote. I just wanted to point out that there are several MSBuild targets available for Sandcastle which should make it pretty straightforward to integrate with Team Build. I was actually at one of my customer’s offices yesterday and they were showing me that they had integrated Sandcastle with their build process and it looked quite good. I haven’t tried using these targets yet so I can’t...
TeamCity support for Team Foundation Server
As part of their "Early Access Program," the folks at JetBrains have posted a build of TeamCity that contains support for TFS version control. They are looking for feedback, so give it a try and let 'em know what you think. TeamCity EAP (Latest) Current build: 3654 released Jan 30, 2007 | Download | Changes This version of TeamCity will contain many additional features comparing with TeamCity 1.2 as well as improvements of existing functionality.To name a few: tags: tfs, team foundation server, teamcity, jetbrains
Extending the Windows Vista grace period to 120 days
Jeff Atwood has written a post on how to extend the Vista grace period to 120 days. It turns out that you can extend it three times for 30 days each, giving you up to 120 days when you count the original 30-day grace period. It seems like a great way to try out Vista Ultimate to see if it's worth the extra money. Extending The Windows Vista Grace Period to 120 Days If you're on the fence about the impending release of Windows Vista, I recommend trying before you buy. Every Vista DVD includes the ability to install any edition of Vista without a product key. When you install without a product key, you...
“Way behind the combination of Nant/CruiseControl.Net”
I was reading through some customer feedback about VSTS and TFS. There were a lot of positive comments in there. I was looking for the negatives, though, because I want to know where we're missing the mark (perhaps by miles). This is one that really resonated with me. "The Build Machine aspect of Team Foundation Server is way behind the combination of Nant/CruiseControl.Net"It's my sincere hope that what we are doing with Team Foundation Build in Orcas will dramatically change that perception. The following posts cover many of our new features. As a result, I'm looking forward to what fol...
Using FinalBuilder with Team Foundation Build
Via Richard Hundhausen, I learned that the folks at FinalBuilder posted an article on their web site about how to get FinalBuilder working with Team Build via FinalBuilder's custom MSBuild task. If you use FinalBuilder, you may want to check that out.tags: tfs, team foundation server, team build, msbuild, final builder
Tabbed windows for remote desktop connections
Shortly after I wrote about Remote Desktop Connection 6.0 client, Blake Handler sent me email about a CodePlex project called Terminals. Terminals is a neat application that hosts RDC sessions in tabs.One of the options in the Terminals connection dialog is whether to connect to the console, which becomes important when connecting to Windows 2003 Servers. Unless I missed it, the RDC 6.0 GUI still doesn't have this feature, and you still have to use mstsc /console.Terminals was created by Dudu Shmaya and Eyal Post. If Dudu's name sounds familiar, it's because he also wrote the TFSBuildManager tha...
Remote Desktop Connection 6.0 client
Last month, the Remote Desktop Connection 6.0 client was released. It has some nice new features in it, which I've listed below. Being able to log into a machine on a private network without having to use a VPN sounds really cool (TS Gateway servers), but I haven't been able to try that out. I found an internal page where folks could sign up for access, but unfortunately the list was full. Being able to span multiple monitors (mstsc /span) is really nice too.The change that I like the most right now, though, is a really simple one. It now uses the same credentials dialog that you see...
Internal TFS server database maintenance
Brian posted these answers in a comment to a question on his January dogfood statistics post. These may be of interest to folks out there, particularly those running larger-sized Team Foundation Server installations. 1) What is the current size of our dogfood database? 2) Backups/Restores - With large databases, are there any issues with backups and/or restores? How often do we run backups? How long do they take typically? Full Databases backups (using LiteSpeed) – Every night Transactional Logs backups (using LiteSpeed) – Every 15 minutes For our biggest instance (De...
Incremental gets with Team Build and the list of files that changed
After you learn five things about Aaron that you didn't know, he'll show you how to do an incremental get without necessarily doing an incremental build. Doing an Incremental Get in Team Build In Team Build v1.0, it is not possible, without some trickeration, to do an incremental get without also doing an incremental build. (The process for doing both is documented here, and consists of setting the SkipClean property to true, the SkipInitializeWorkspace property to true, and the ForceGet property to false) The short answer for why this is the case is that the CoreClean target wipes out the entire sou...
TFSBuildManager – project on CodePlex
Lorenzo Barbieri wrote about a tool on CodePlex called TFSBuildManager. I didn't know about this one. It's a tool written by Dudu Shmaya. The CodePlex project page has the following about the project. TFSBuildManager TFSBuildManager is a utility to manage Team Foundation build types in an environment other than Visual Studio. Main Features News Information Looking at the screenshots, it looks quite useful. There is a download from the releases page.Dudu's blog has quite a few posts about using the Team Build web service. Here are links to some of them. tags: tfs, team fou...
John Robbins’ approach to working offline with Team Foundation Server
John Robbins has written a post called Working Offline with TFS. In it, he describes his approach to using Visual Studio when not connected to the Team Foundation Server. As many of you know, the server information is stored in the .sln file, and VS tries to connect to the server whenever you open a solution that contains the server information in its source control bindings. To make things go more quickly, he wrote a couple of custom MSBuild tasks to automate the process of adding and removing the bindings the solution files. While you don't have to remove the bindings while you're offlin...
Five things about me
Martin Woodward tagged me with that blogging game that's going around where you post five things that people don't generally know about you and then tag five more people. Okay, I have to admit it seems kind of fun, so I'll do my part to keep it going. I'm tagging Jeff Beehler, Aaron Hallberg, Mario Rodriguez, Jeff Atwood, and Clark Sell.
TFS Version Control Server Team blog is alive
Chandru, a developer on the TFS version control server, has written the first post on the Version Control Server Team blog. I helped Craig Harry, development lead for TFS version control platform, set this blog up a while back, so I'm excited to see the first post. Craig's team owns both the version control server and the client object model, which moved to his team in the re-org that occurred last spring. Orcas Workspace Mapping Improvements I thought I would give you an overview of the workspace mapping improvements which Brian Harry mentioned in his TFS roadmap post. P...
Orcas Team Build Continuous Integration spec is now available
Back in early December, I wrote the post, More on the Orcas features for Team Build, that described many of the new features that we are adding for Orcas, elaborating on what Brian Harry had written in his TFS Roadmap post. I'm very happy to say that later in December, we finished the implementation of those features, and they'll be in the next CTP.A few days ago, we published the specification for Continuous Integration and the other features that we have added to Team Build. It's available in Team Foundation Server section of the Feature Specifications for Visual Studio and .NET Framework "Orcas" pa...
How to deal with the Y2K7 problem — file versions and AssemblyInfoTask
If you use the AssemblyInfoTask to stamp the version numbers for your assemblies that you build with MSBuild as part of your Team Build process, you may run into the "Y2K7" problem. The version number is stored as a 16-bit (yes, 16 not 32) unsigned integer. With the format YMMDD, January 1, 2007 becomes 70101, which is 70,101 and doesn't fit in a 16-bit integer. Internally, the version numbering has been reset to have a smaller number for the year. For the last part of 2006, builds were 1MMDD. Starting with 1/1/07, they are 2MMDD. Neil Enns discusses the issue in the MSBuild Te...
Beeps from bullets
Way back near the beginning of development of TFS version control, which was called Hatteras back then, we sent email to the team manually when we checked in. So I would typically write my checkin comment in Outlook, which was using Microsoft Word as the editor, and then paste it into the checkin dialog. My comment was a bulleted list of the changes that I made. I would start with an asterisk, and Word would convert it to a bullet. Later, viewing the changeset details on the command line would produce beeps. I knew that the Unicode bullet character was being converted to a BEL (...
IE Add-in for filing bugs in TFS for web pages
Rob Caron wrote about the post Automatically raise bugs from IE on the Microsoft Developer Tools UK Sales Team blog. Here's the text of the post, and there's a screen shot on the GotDotNet page. Have you ever been in a position where someone raises a bug on a web page that you have been working on, but doesn't supply enough information to allow you to reproduce the problem? Ok, I didn't think it was just me :-) To try and help this, I've written an addin for IE to allow users to easily raise a complete bug report. When the user indicates that there is a problem on the page, the addin will create a new ...
Brian Harry’s explanation of Rosario
Brian's post What's in a Code Name? provides some explanation behind the Orcas and Rosario code names. You won't hear the word "Rosario" normally, and here's a bit on why. What's in a Code Name? Mary Jo Foley is writing about one Microsoft code name per day on her blog. I think it's pretty cool and there's a few code names I've never even heard of before. She has written about a couple of Developer Division code names so I thought I'd add my own colorful commentary. ... So we get to Rosario. Rosario is a resort on Orcas island. It is a code name that the VSTS team has been ...
How to add your own message in the build report
If you've ever wanted to add your own message in the "Build Steps" section of the detailed build report, Aaron Hallberg provides a custom task to do it.Aaron, along with the rest of the team, had been focused on finishing up the continuous integration feature for Team Build. I'm happy to say that we got it finished and checked into the main-line code this week. It'll be in the next CTP that's released. It's also in a Channel 9 interview that Brian Keller taped yesterday where Jim Lamb and I talk about Team Build as well as demonstrate the new features. Brian recorded interviews with a...
Visual Studio 2005 Service Pack 1 released
Visual Studio 2005 Service Pack 1 was released yesterday. Here are the direct download links. · VSTS SP1: http://www.microsoft.com/downloads/details.aspx?FamilyID=BB4A75AB-E2D4-4C96-B39D-37BAF6B5B1DC&displaylang=en · TFS SP1: http://www.microsoft.com/downloads/details.aspx?FamilyID=A9AB638C-04D2-4AEE-8AE8-9F00DD454AB8&displaylang=en · Quiescing GDR (required for the TFS patch): http://www.microsoft.com/downloads/details.aspx?FamilyID=c18c756e-8f80-4987-b3bf-600068a9e3c4&DisplayLang=enHeath Stewart has a blog post on how to slipstream Visual Studio 2005 Service Pack 1. tags: ...
Third party add-in: Test Manager Add-In for Microsoft® Visual Studio® 2005 Team Edition for Software Developers
Many customers have expressed their disappointment with the fact that test lists (.vsmdi files) can only be created and managed in VSTS for Testers or VSTS Suite, leaving VSTS for Developers users in a bind. There is now an add-in from Ekobit that solves this problem! Check it out!Here's the announcement on Ognjen Bajic's blog. Test Manager Add-In Do you have lots of unit tests (or other automated tests, for that matter)? How do you organize them in lists? Using Visual Studio Team Suite? Nice, you’re covered. In Team Suite you can use the Test Manager window to easily build hierarchies and list...
Submit questions for the Channel 9 interviews of the NC TFS team
Brian Keller, technical evangelist for VSTS, is coming to the North Carolina office to interview Brian Harry and folks from each of the feature areas developed here (I'll be in the Team Build segment). Submit Your Questions for the Upcoming Channel 9 Interviews of the Team Foundation Server Team On Dec. 14 & 15 I will be filming more Visual Studio Team System Channel 9 interviews on-site with the Team Foundation Server team in Raleigh, North Carolina. I am pleased to announce that Brian Harry has graciously agreed to take some time on camera to talk about the roadmap for Team Foundati...
More on the Orcas features for Team Build
Brian Harry posted a TFS roadmap. I'd like to expand on the portion that describes the features specific to Team Build. Keep in mind that these features can change before Orcas ships, so there are no guarantees that it will match what's described below. Build There's a lot there.The first item refers to the feature in msbuild where it spawns multiple processes to build projects in parallel, for projects that don't depend on each other.Continuous integration is the flagship feature for Team Build in Orcas. There's a build definition dialog that lets you specify all of the build "metadata," such...
TeamPrise 2.0
Congratulations to the TeamPrise team for shipping version 2.0! Martin Woodward posts about it and includes screenshots. Teamprise Turns 2.0 Tuesday marked the beginning of my second year with Teamprise and today I'm very happy to report that we have just released Teamprise 2.0. To celebrate I thought I'd give you a quick run through of some of my favorite features. more...tags: tfs, team foundation, teamprise
Continuous Integration in Team Build for Orcas
Brian Harry has written a post about an SD Times article about TFS. Since he is the head of Team Foundation, his posts tend to have interesting tidbits in them, such as the following. It talks about the lack of continuous integration and the ability to schedule builds. It also talks about lack of a gui editor for build definitions. I think it's fair to say that TFS Build is the weakest of our "out of the box" feature experiences. It does a good job serving as an integration point - pulling together data from version control, work item tracking, testing, the build process and populating the warehouse. Howeve...
Building software against different versions of .NET with MSBuild in Orcas
Faisal Mohamood, a program manager on the MSBuild team, has written a pair of posts about the "multi-targeting" feature in the Orcas version of MSBuild. Multi-targeting allows you to build your code against the .NET 2.0, 3.0, or 3.5 frameworks, according to your requirements. This is great because it allows folks to have some projects use the newest framework and other projects remain on an older framework by simply specifying the tool set in the project files. MSBuild, Orcas, and Multi-targeting So if you were curious enough to dig into what the October 2006 Orcas CTP contained, you might have s...
All of the Sysinternals tools in one download
Microsoft TechNet put them all in one convenient download. Sysinternals Suite Published: November 1, 2006 Introduction The entire set of Sysinternals Utilities have been rolled up into a single Suite of tools. This file contains all the individual tools and help files. Download SysinternalsSuite (8 MB)tags: tools, sysinternals
Where does the console output for tests go when run within Team Build?
This question came up on the internal discussion alias. Tom Marsh, development lead on VSTS for Testers, responded saying, "the console output is saved with the unit test results. If you download the results and open them in the IDE, you will see the console output in the results view for the test that created it."tags: tfs, team foundation, team build, vsts, team system, mstest
Updated version of new TestToolsTask
I've updated the TestToolsTask that supports using test containers, in addition to the test metadata files supported by v1. Unfortunately, the task I posted originally didn't result in builds being marked as failed when the tests had errors. I missed that fact in my testing. The reason for the problem is that the v1 Team Build logger looks for the task name, TestToolsTask, and the power toy task was originally called TestToolsTaskEx. With this new release, the task has the same name as the original v1 task, so that builds will be marked as failed when the tests fail.If you d...
Opportunity to provide feedback on Community Technology Previews (CTPs)
Brian Harry would like your feedback on how and when we do CTPs. Be sure to post comments on his blog! Feedback on VS Community Technology Previews (CTPs) We recently had an internal email thread with some people on our advisory councils giving us feedback on our CTP process. There was some interesting and somewhat surprising feedback. I wanted to solicit broader feedback from the community on what you want from the CTP process. Here's some questions to get you thinking about it: tags: tfs, team foundation server, vsts, team system, ctp
How to run tests in a build without test metadata files and test lists (.vsmdi files)
[UPDATE 6/16/2010] The VSTS 2008 release added support for test containers (/testcontainer) in the product, and the 2010 release added support for test categories. This post now only applies to TFS 2005. Since the beginning, running tests in Team Build (or MSBuild in general) has meant having to use .vsmdi files to specify the tests to run. Tons of people have complained about it, as it's a burden to create and edit the files, as either VSTS for Testers or the full suite is required in the 2005 release, and merging changes to the file is painful when multiple developers are updating the fil...
Moving the TFS SharePoint site to another server
Brian Harry talks about the documentation on how to move your TFS SharePoint installation to a different server. It's important to note that he calls this out as not being a trivial undertaking, so you'll want to be extremely cautious. Moving your TFS SharePoint site We've gotten tons of requests since we shipped TFS v1.0 from customers who want more flexibility with the configuration of the SharePoint server that TFS uses. Some want to use a SharePoint web farm that they already have. Others want to use a pre-existing web site. And still others want to change the port # or not have a Shar...
A checkin policy to detect that the build is broken in a CI environment
One important aspect of Continuous Integration is getting notification that the build is broken. One common way is via a desktop notification from an application like TfsAlert that listens for events (or polls if there isn't a TFS-style event notification mechanism).Ideally, the build or unit test break would be noticed as soon as it happens, so that the problem can be fixed before other checkins pile up. Clark Sell has come up with a checkin policy that detects that the last build failed and produces a policy failure when that happens. That makes it pretty hard to say, "But I didn't know a...
Getting desktop notifications for TFS events
Clark Sell has created a home on CodePlex for a useful desktop notification tool called TfsAlert. TfsAlert is a .Net 3.0 smart client which monitors for user selected TFS events and will display a balloon window in the Windows TaskBar Notification Area. It is built on top of WCF where you can subscribe to any TFS event you feel fit. It's initial focus is around Team Build management but will also include features around Work Item tracking.You can get the code, but there's not a binary available yet. This project is the result of his desire to have something equivalent to the desktop notification tool u...
Visual Studio Team System Chat – Wednesday, Nov. 8th
Join members of the Visual Studio Team System product group to discuss features available in Visual Studio Team Foundation Server, Team Editions for Architects, Developers, Database Pros, and Testers. In addition, discuss what's new in the latest Community Technology Preview (CTP). November 8, 200610:00 - 11:00 A.M. Pacific TimeAdditional Time Zones Add to Calendar
Project Server 2003 – Team Foundation connector released
This was released today. Here's the announcement from the GotDotNet workspace. ANNOUNCING THE VISUAL STUDIO TEAM SYSTEM - PROJECT SERVER CONNECTOR! We are pleased to announce general availability of the Project Server 2003 – Visual Studio Team Foundation Server 2005 Connector application. The Connector can be downloaded here: http://www.avanadeadvisor.com/TFS-ProjectServerConnector.zip. The Connector is largely based on the sample Project Server 2003 – Visual Studio Team Foundation Server Beta 2 Connector available on GotDotNet. The Connector is also available as a part of the Avanade...
Updated list of continuous integration tools for TFS
I've updated my post More continuous integration with Team Build to include tools released after that post was written.tags: tfs, team foundation server, team build
An Introduction to Team Foundation Server Version Control from a Visual SourceSafe User’s Perspective
Steven St. Jean has just posted a great document that helps users make the move to Team Foundation Server's version control. While his goal is to help VSS users, this document will help users moving from a lot of other source control systems as well, such as Star Team. He includes lots of screen shots.I'd highly recommend this to folks who are trying to learn how to use TFS version control and are coming from a version control system like VSS that lacks pending changes, changesets, workspaces, and other concepts that TFS has. It's not going to tell you how to administer your ...
Team System Virtual PC image, including Team Foundation Server
Someone recently asked me whether there is a VPC image available for Team System and Team Foundation. There is one available to MSDN subscribers in the download area. It’s under Developer Tools -> Visual Studio 2005 -> English -> Visual Studio 2005 Team Suite Trial Edition (For Evaluation Only).Earlier versions of this VPC have been around for a while, but it's easy to forget that it exists.tags: tfs, team foundation server, team system, virtual pc
Assigning work items for failed builds
Steven St. Jean has written a nice post about how to assign to a particular person the work item that's created for a failed build. When he talks about the name for the Assigned To field, it must match the name that's displayed in work item tracking. WIT shows the display name for a user, rather than the shorter domain login (aka alias). TFS - Team Build - On failed build assign workitem to a specific user Problem: I just came across a post on the MSDN TFS forums that was asking how you go about assigning the workitem created on a failed build to a specific user. I have also been asked to do th...
Creating a new server from an old one: Beware of the InstanceId
[UPDATE 8/23/14] The MSDN topic Move Team Foundation Server has the information about cloning TFS 2013. Today, that info is in the Q&A section at the bottom of that page.[This post contains instructions for TFS 2005/2008 and TFS 2010, which is in a separate section below]Grant Holliday wrote a post called, TFS InstanceId, ServerMap.xml and havoc. In it he describes his experience with backing up a production server and restoring it to a test environment. The problem he ran into is that every server has a unique ID called an InstanceId, which is just a GUID. That GUID is the real name of a se...
Understanding port configuration for Team Build
Etienne Tremblay, a Microsoft MVP, put up a nice Visio diagram showing the ports used by Team Build and the direction that must be opened for each. Check it out! Team build the ins and outs So we learn stuff everyday... well I hope. Here is a bit of insight on Team Build, specifically the ports that need to be opened for it to work properly in a multi-machine scenario. more...tags: tfs, team foundation server, team build
Team Foundation Server Knowledge Base Articles
Neno Loje, a Microsoft MVP, posted a nice list of knowledge base articles for Team Foundation. Here's the list (copied from his post). So I thought I'd try searching the KB to see how easy it is to get this list. Well, I don't like the search interface. If I search by product for Visual Studio Team Foundation Server (the only product name choice), I get the following results (click here to run the query). Needless to say, that's not a great result.If instead you search for the phrase "team foundation" you get all sorts of results (79 total, currently), some of which don't seem t...
Team Foundation Power Toys video on Channel 9
Brian Keller has put up a video on Channel 9 that has Erin Geaney, a developer on the TFS MS Office integration team, demonstrating the Team Foundation Power Toys that we updated recently. The original release of the power toys was nearly a year ago and was the work of an intern who worked for me, Philip Kelley (he also wrote a paper on how to create shadow folders). The latest power toys release has Visual Studio add-ins, VSS-style project differencing (also written by a summer intern, Taylor Lafrinere), work item tracking commands in tfpt.exe, and more.tags: tfs, team foundation server
How to use the new Custom Controls in Work Item Forms (SP1)
Naren Datha<, a dev who works on the WIT client, has written a post on how to use the new work item tracking custom controls that are introduced in SP1 beta (he previously mentioned some ideas for custom controls). He provides an overview, details on how to create custom controls, some hints for troubleshooting, and a sample in a zip file attached to the post. Check it out!How to use Custom Controls in Work Item Formtags: tfs, team foundation server, tfs api, work item tracking
Adding a path filter to a CheckinEvent subscription using bissubscribe
This week, a couple of people asked (forum post 1 and forum post 2) how to subscribe to the CheckinEvent notification when there's a checkin under a particular tree. The first person wanted to filter by path in order to kick off continuous integration. The second person wanted to filter by path for email subscriptions.Here's the command line that I used to configure an email notification for a path. I've changed the email address (someone@microsoft.com), the server name (http://MyVstfat01:8080), and the path ($/TeamProject/A) from their original values, but it's otherwise what I've used to creat...
SP1 beta is now available
For Team Build users, I'll spare you the suspense and tell you that there are no meaningful changes in Team Build itself in SP1. There are changes in other parts of the system, though, that will be of some benefit.Version control users will get a number of fixes, but most are related to scalability.Brian Harry described many of the TFS SP1 changes in a post in June. I'm sure he'll post a follow up soon now that SP1 beta has shipped.You can find out how to get the SP1 beta at Microsoft Connect. Soma's post provides a higher-level description of what's in SP1 beta.UPDATE: Rob Caron...
How to measure performance using the web service performance dialog
You may have read about the Team Foundation activity log, which is a database table containing the web service requests executed by the server (turning it on, interesting queries, and more interesting queries). You may have also seen posts about turning on tracing, both server tracing (see Patrick Carnahan's first response) and client tracing (see my first response, or the commented-out block in tf.exe.config). Tracing produces tons of info, and it can be really useful for solving difficult issues. What if you just want a convenient way to see the web service calls your application...
Documentation error results in a build that never ends when building setup projects (.vdproj)
There's an error in the MSDN documentation on how to build Visual Studio setup projects with Team Build, which several customers have hit now (see this Team Build MSDN forum question). The result is that the build hangs; it never returns. The reason is that there's a line break in the MSBuild XML snippet on the MSDN documentation page that results in devenv (VS) being launched as an interactive process rather than with the set of arguments to build a deployment project. The result is a hang, since nothing can see the instance of VS that's been launched by the build service.The documentation...
How to determine whether tests passed and building a specific version
Aaron Hallberg has written a couple of posts about Team Build that started with questions from users. The first deals with how to determine, from code, whether tests passed. Determining Whether Tests Passed in Team Build In a forum post a while back, I laid out a method for determining whether tests had passed during a build. More recently, I have linked to this forum post in advising others on similar problems. Unfortunately, as a sharp user pointed out in this same thread, my solution doesn't actually work, since it relies on a property that is not accessible in Team Build v1! So - to remedy t...
VC API: CheckIn() may return 0
Back in March, I wrote a post called How to check in changes on behalf of other users. Among other things, you'll find the documentation comments for the Workspace.CheckIn() method, which you'll notice is now on MSDN. While that and How to validate check-in policies, evaluate check-in notes, and check for conflicts are probably the best documentation on how to use CheckIn(), I didn't mention that CheckIn(), which returns the changeset created by checking in, may return 0.The version control server automatically undoes the pending changes in the case where you attempt to check in files that haven'...
Sept. 6th Team System chat transcript is now available
Brian Keller mentioned that the transcript of the Sept. 6th chat is now available. Team System "Chat" transcript now available It looks like the the transcript from our September 6th "Chat" on MSDN is now available. It was great meeting everyone who could make it - we had nearly 150 people during the live session which is simply incredible! Team System has become very popular in a relatively short amount of time, which is of course thanks to our customers. So THANK YOU for believing in the product as much as we do! For people who couldn't attend the live chat session the transcript is a good w...
TFS API: How to choose between TeamFoundationServerFactory.GetServer() and the TeamFoundationServer constructor
Occasionally the question of whether to use the TeamFoundationServerFactory.GetServer() method or the TeamFoundationServer constructor comes up, and someone recently asked this question on an internal list. The answer depends on the needs of the application that you are writing. In this post, I'll discuss the main differences between the two. If you have an application where different parts of the code will need to access the same TeamFoundationServer object (say you need to hook up event handlers to the same VersionControlServer object that the rest of the code is using) but only have the name/U...
Building web projects with Team Build
Bernardo Heynemann wrote a nice pair of posts on using Team Build to build and deploy web projects. While he uses the recently-released continuous integration tool from Notion Solutions (Team CI), there are a number of continuous integration tools for Team Build. Team Build 101 (Part 1 of 2) Team Build 101 (Part 2 of 2) Today we engaged in a task (that seemed daunting at first, but proved to be just a little hard :)) that was the one to setup a team build for Continuous Integration of one of our websites. For you guys that didn´t know, MSBuild does not currently support Website deployment out of ...
Team Build API: GetBuildUri() and GetBuildDetails()
Aaron Hallberg plans to periodically post descriptions and examples of some of the more relevant Team Build web service methods. There's no good source for this information currently. Even the Team Build API documentation recently published on MSDN won't help you much, as I described here. If you have particular methods you'd like to know about sooner rather than later, be sure to leave a comment on his blog.His first post is about the GetBuildUri() and GetBuildDetails() methods on BuildStore. Team Build API: GetBuildUri and GetBuildDetails As Buck Hodges recently noted, some Team Build API...
Customizing the new TreeDiff power toy
If you haven't seen the new TreeDiff, you can see a screen shot in Brian Harry's post about the new release. It provides a VSS-style project difference tool that allows you not only to see what's changed but also reconcile changes.Tan Phan, a developer on the version control client team, has written a post describing how to customize the TreeDiff tool. He provides a link to Michal Malecki's post about a workaround for the get latest issue as well as how to fix the file extension filtering, change colors, and more.tags: tfs, team foundation, source control, tfpt
What do you want in the way of power toy checkin policies?
Mario Rodriguez, a program manager on TFS version control, is seeking your input on what you need in the way of checkin policies for a future power toys release. An example might be a policy that wraps another policy to provide path filtering to more precisely control what files are subject to a particular checkin policy.Please leave a comment on his blog post. Check-In Policies Pack Feedback Request I have decided to skip the post about merge and deleted items for today in order to get some feedback from you on Check-in Policies. Currently, we are thinking of releasing a check-in policy pack out ...
Getting web sites precompiled with Team Build
Aaron Hallberg wrote a great post explaining how to build precompiled web sites with Team Build. The problem is that building them does not, by default, produce precompiled websites where all of the code is in dlls and removed from the ASP.NET source files. Team Build and aspnet_compiler.exe ... Because Team Build typically compiles solutions and not projects, an additional complication is introduced with website projects. By default, these projects have the -u option selected for their compilation in their solution property pages. With this option turned on, aspnet_compiler.exe keeps marku...
How to handle “The path X is already mapped in workspace Y”
This has come up before on the forums, but I don't think I've ever posted about it here. Today I saw a reference to the TFS Workspace Gotcha! post in today's Team System Rocks VSTS Links roundup. There's a command to deal with the problem, but it's not obvious.Here's the post. I have been working with a team that has recently migrated a TFS source project from a trail TFS to a full production server (different server). They disconnected their solution from source control (removes all the SCC stuff from .sln) files and then tried to add to the new TFS. However, they were getting weird errors...
Sample reports that use the TFS reporting feature
If you are interested in the TFS reporting feature, you may want to check out the sample reports in the zip file attached to the following blog post. Sample Team System Reports This attachment contains a variety of samples, experiments and untested reports for use with the Team Foundation Data warehouse. There is a brief overview document describing the reports and how to deploy them. zip file: TFS Reporting Samples.zipHere's what you'll find in the zip file. If you have any questions or have feedback for the team, be sure to post in the MSDN TFS Reporting Forum. C:msdownTFS+Reporting+Samples>tree /FFold...
TFS API documentation is now on the MSDN web site
Rob Caron mentioned that the SDK documentation is now on the MSDN web site. That SDK documentation includes the Team Foundation Server API documentation. Last year I pointed out where to find the version control documentation in the massive download that is the VS SDK, but you don't need to do that now.So, the good news is that the documentation that we have is much more accessible. The bad news is that it's still pretty thin. Folks are working on that, but it's going to take time -- the API is pretty large.Version Control APIHere are some pointers to some key classes for version control, ...
More power: New power toy release (tfpt) includes VSS-style project difference!
[UPDATE 8/9/07] I fixed the broken link to the power tools page.Brian Harry announced the latest release of the Team Foundation Power Toys in the post, New TFS Power Toys Available!. In his post he gives a quick description of each of the new commands and the major enhancements.One of the most important aspects of this release is that tfpt is no longer buried in a 300 MB download. Here's the new slim and trim 1 MB download: http://go.microsoft.com/?linkid=5422499. That's a 300-fold improvement! Don't expect that kind of improvement in the next release. ;-)After you install the ...
TFS tools on CodePlex
I ran two searches on CodePlex to see what folks are developing for TFS. One search was for "TFS" and the other was for "Team Foundation," which I hope would be enough to catch them all. The second search only yielded one additional project (Time Tracker).It's always cool to see what folks come up with. Highly-motivated individuals and groups can extend TFS in really meaningful ways. If you start a project for TFS, contact me when you have a usable release, and I'll mention it in a post.The one highlighted in bold have useful releases that you can download today. TFS Code R...
Filtering the builds listed in work item tracking
As soon as folks start using Team Build, especially with some sort of continuous integration support, several issues pop up regarding the integration with work item tracking, including how not to have bad builds listed and how not to have every build from every build type listed.When TFS is installed, work item tracking adds a subscription, via bissubscribe.exe, to receive all build completion events. Builds are listed in the "found in" and "fixed in" fields in work item forms. Since there is no filtering, every single completed build is added to the list of builds.Jason Prickett, a developer wor...
Writing custom loggers for use with Team Build
If you you're interested in adding a custom logger to your build process in Team Build, Aaron walks you through the steps you need to know. Adding Custom Loggers to Team Build Yesterday we looked at using tasks to add customized build steps during a build. Today I'd like to show you how to add a customized logger.
MSDN chat with the VSTS product team
Visual Studio Team System ChatCome and join members from the the Visual Studio Team System product group to discuss features available in the Visual Studio Architect, Developer and Tester editions as well as Team Foundation Server. There will be experts on hand to answer your questions, so we hope to see you there! Add to Calendar September 6, 200610:00 - 11:00 A.M. Pacific timeAdditional Time Zones
Branching and merging strategies
I saw Rob Caron mention this new MSDN article, and it's a topic that comes up relatively frequently. If you've wanted to know more about different strategies for organizing your branches, this article provides a nice overview and links for you to dig deeper. Another link that may interest you is an article on branching models mentioned in the post, Branching Models. Branching and Merging PrimerChris BirmeleDeveloper Tools Technical SpecialistMicrosoft Pty Ltd, Australia / New Zealand August 2006 Applies to:Microsoft Visual Studio 2005 Team Foundation Server Summary: An introduction to the conc...
Team Build blogger: Aaron Hallberg
Aaron Hallberg, a developer working on Team Build, has taken the plunge and started a blog. Those of you who frequent the MSDN Team Build forum will probably recognize the name. You now have a blog to go with the name!After getting post #1 out of the way, Aaron shows you how to insert custom build step from a custom task. The build steps are the messages that are displayed in the build report window. For example, you would want to insert a build step if your custom task takes a significant amount of time, so that the person running the build has some insight into what's going on. ...
Two good posts: Building projects with shared code and using Web Application Projects (WAP)
Last week, the folks at Vertigo Software wrote a couple of really good posts involving Team Build.The first one, written by Jeff Atwood, is about building projects that have code shared from a different team project. The crux of the problem is that in v1 Team Build doesn't allow mappings in the Workspace.xml file to span team projects. Jeff takes Manish Agarwal's solution for builds requiring files from more than one team project and lays out a solution for dealing with VS projects that include code from other team projects. How do I build a Team Project with shared code? One question that comes ...
New Team Build content on MSDN
The VSTS User Education blog announced new MSDN content on using and customizing Team Build. Check it out!New Team Foundation Build Customization Content on MSDN We are adding new content on explaining Team Founadation Build customization targets and tasks. Check out the following topics on MSDN: Understanding Team Foundation Configuration Files Customizable Team Foundation Build Targets Customizable Team Foundation Build Properties Team Foundation Build Tasks Additionally, a walkthrough that explains how to build a Visual Studio setup project in Team Foundation Build is posted at: Using Team Build to...
Finding the changes between two labels in TFS version control
Carl Daniel (code) and Robert Downey (code) each wrote and posted code to show the changesets between two labels in TFS version control. They each took the same basic approach: call QueryLabels() to get the set of items in each label, find the highest changeset version for each set of items, and then call QueryHistory() with the range of versions specified as the two highest changeset versions found.There's one technical flaw with this approach. A label in Team Foundation Server is not a point in time. In TFS labels are collections of files, each at a particular version. Brian Harry wrote ...
Dev lead for Team Build
For three years I worked on Team Foundation Server Version Control. Most of my contributions were to the version control object model, the tf.exe command line, and general infrastructure. After v1 shipped in March, we reorganized the TFS organization. Version 1 of TFS Team Build was developed by a small team in India, led by Gautam. As part of the April reorganization, the Team Build feature moved to North Carolina, and I became the dev lead. It's still a small team, compared to version control and work item tracking. Durham, North Carolina is now home to the build auto...
Check-in policy: Requiring a comment
A check-in policy to require a comment has always been a frequent request. Jeff Atwood has posted a convenient installation package (.msi) for James Manning's check-in policy to require a comment. Installing the Check for Comments Check-In Policy In a previous entry on adding a new check-in policy, I provided the source code for a comment policy. I re-packaged that source into an easy one-click installer:
A tool for reporting expiration dates for RC and RTM trial editions of Team Foundation Server
As some customers have found out the hard way, the TFS release candidates have started to expire without warning at the end of the 6 month (180 days) period. The TFS trial edition (RTM) will start to expire next month, again without warning. It also expires 6 months after installation.This morning, Brian Harry posted a tool that you can use to detect which version of Team Foundation Server you have installed and when it will expire. More Expirations Coming Soon... A couple of weeks ago I wrote about the impending expirations of TFS Release Candidate installations and Trial installations that were inst...
Combining OneNote and Outlook would make OneNote very useful
I've written before about putting files directly into Outlook to make them securely available at work and at home. Part of the reason for that is to have documents that just contain my thoughts on changes we should make, features we should consider, and so on. Those are the kinds of things that would fit well into OneNote. But I can't get to OneNote in all the places where I have access to Outlook.Omar Shahine wrote a post today titled, Outlook Wish List 2007. In it he mentions wanting to see OneNote integration with Outlook. That would be really useful, and I'd start ...
Squeet: Get RSS feeds in your inbox
I tried using an RSS aggregator, but it didn't fit the way that I wanted to work. All of the feeds are trapped on the machine running the aggregator. I wanted to be able to get to them from work and home. Web-based aggregators solve that issue but still fell flat for me because I never remembered to go check them. I wanted something that would deliver everything to me in the one application that I have access to from work and home (RPC over HTTP) and that I run all of the time: Outlook. Rob Caron told me about Squeet when I was in Redmond in March, and I started using it the...
Links to MSBuild tasks to extend your build system
Build systems need to do all sorts of things, from updating web sites to deploying databases. Often, the tasks needed to do these things are available, but finding them can be a challenge. I've collected links to various MSBuild task collections that you can plug into your Team Build scripts. Hopefully, you'll find something that helps you get more out of your build. [UPDATE 5/30/2007] The SDC Tasks Library that was on GotDotNet is now on CodePlex at http://www.codeplex.com/sdctasks.
Mario, version control PM, is now blogging
As Robert Horvick and Rob Caron have both mentioned, Mario Rodriguez has started a blog on version control: http://blogs.msdn.com/mrod/. In his first post, The Start, he talks about his background and the topics he intends to cover. If you have features that you really want to see in future releases of Team Foundation Server version control, be sure to let Mario know.
TFS exstensibility documentation on MSDN
I stumbled across the following pages on MSDN that provide step-by-step introduction to the basics of extending Team Foundation Server. [UPDATE 8/29/06] Unfortunately, all of the links originally pointed to the same page, and I've now fixed them. I didn't notice at the time that clicking on different links on that section of the msdn tree doesn't change the URL in the browser, so I copied the same one every time. Thanks, Tom, for letting me know!
Links to code samples
I recently had to put together a list of links to code samples. This isn't even close to comprehensive, but it should help you get going if you are looking for something.Version Control TFS Work Item Tracking
Getting Changeset objects from associated work items
On internal mailing list, someone asked how to do this, and I thought it's worth sharing. You can get a Changeset object using its artifact URI (aka link) via VersionControlServer.ArtifactProvider. Here’s how that would look like, based on modifying code from James Manning’s blog posthttp://blogs.msdn.com/jmanning/archive/2005/09/21/472524.aspx. Added/changed lines are hightlighted.using System;using System.Collections.Generic;using Microsoft.TeamFoundation.Client;using Microsoft.TeamFoundation.WorkItemTracking.Client;using Microsoft.TeamFoundation;using Microsoft.TeamFoundation...
RSS feed generators for Team Foundation
First there was Jeff's RSS feed generator for version control. Then Abhinaba used it as a starting point for his RSS feed generator for team build. Naren has now posted an RSS feed generator for work item tracking. A quick web search yielded an RSS feed generator for SharePoint. I couldn't find one for SQL reporting services. If anyone knows of one, I think that would round out the list.
MSBuild wiki
In addition to the MSBuild documentation on MSDN and the MSBuild team blog, there is an MSBuild wiki on Channel9. I had seen it before, but forgotten about it until I saw it mentioned in one of Chris Sells' old blog posts (My First MsBuild Task).Here's the current table of contents for the wiki. Frequently Asked Questions
Don’t override CoreCompile
There have been several times when folks have needed to run a custom target prior to building each solution (or project) in Team Build. Unfortunately, there's no good way to do this. Manish Agarwal describes (mostly) how to do it in his post, How to call a custom target after building each individual solution (sln) in Team Build? The solution he gives involves overriding the CoreCompile target.The CoreCompile target, along with many other Core* targets, is changing for the next release of Team Foundation Server. The changes are due to the need to support new features in the product, a...
Putting the build number in your binaries
Jeff Atwood has a nice post on how to get Team Build to put the build number in the assemblies it builds. Adding the Build Number to your Team Build binaries If you're using Team Build, you may want to "tag" the binaries produced with the name of the build. In order to do this, we'll customize the Team Build script (TFSBuild.proj) for the project, hooking in to the default Team Build BeforeCompile event.
Intellisense while editing Work Item Types
Back in April, Mariano Szklanny posted a tip on how to get intellisense in VS when editing the XML for a work item type. If you’re editing work item types, you will find useful having Intellisense in Visual Studio 2005:
More continuous integration with Team Build
Earlier, I mentioned Jeff Atwood's continuous integration approach. Here are a couple more approaches.Sondre Bjellås has decided to write his own continuous integration system for Team Build back in May (Making a Team System Automation Framework). It is called Automaton, and it's available on CodePlex. Automaton is a Continuous Integration engine for Microsoft Team Foundation Server. Automaton will monitor your source code repository and automatically run the correct team builds that you create within Visual Studio. Build reports can be view through a web site, and your development team can get ...
ClickOnce manifests and Team Build
Eric Charran has written a nice post on dealing with ClickOnce manifests in Team Build. Building a ClickOnce Manifest File with Team Foundation Services Team Build Issue: When building a ClickOnce application using Team Foundation Build Services, the goal is to modify the details contained within the .application deployment manifest file to conform to desired settings segregated by build type. This would allow Build Masters and Release Managers to build the application using different build types within Team Foundation Server and have the drops for those builds take on different deployment profiles. F...
Continuous Integration with Team Build
Jeff Atwood started out with the continuous integration with MSDN CI sample for Team Build. Then he made improvements to it and posted it as a A Kinder, Gentler Continuous Integration service for Team Foundation Server. You can use Abhinaba's build notification tools to keep track of how it's going. A Kinder, Gentler Continuous Integration service for Team Foundation Server In an earlier post, I documented how to set up Microsoft's unofficial Continuous Integration solution for Team System. I was a little.. perplexed.. by the code inside that web service. I took some time to refactor it and polis...
Two more ways to get build notifications
Abhinaba Basu posted his second Team Build power toy build notification app. Previously he had posted a Team Build RSS feed power toy. Today he posted his desktop notification app, which he calls BuildTicker. Team Build Ticker: parting gift I had blogged earlier about the BuildTicker tool which sits on the system tray and notifies of builds happening on the server. I have received many requests to get this tool. So here it goes. Get the executable from here and the sources from here. Since I am no longer working on the TFS team you can consider this as my parting gift :)
Team Build Extensibility
There's a document in the Visual Studio 2005 SDK that describes the extensibility points in Team Build. I have the April release of the SDK, so it's located at C:\Program Files\Visual Studio 2005 SDK\2006.04\VisualStudioTeamSystemIntegration\Team Build\Team Build Extensibility.doc. The SDK is a huge download, so I'm attaching the document to this blog post. Here's what's covered in the document. Understanding Team Foundation Build configuration files Order in which targets are executed by Team Foundation Build Extending Team Foundation Build Creating a Build Type Creating Custom Tasks Checking Out th...
Google Web Accelerator doesn’t mix with TFS
In the forum post Getting Latest Version Error (TF30063), a user was getting the error message "TF30063: You are not authorized to access Microsoft-IIS/6.0" when getting files from version control. I asked a bunch of questions, which the user answered, but that didn't really help. The user end up figuring it out. It turns out that the client computer had the Google Web Accelerator installed, and the web page caching was causing problems.I had seen anti-virus applications and firewalls causing problems (for example, random files being left writable after a get), but this was a new one. ...
Using an SMTP server that requires authentication
Bill Essary provided the following as a work around for using a Team Foundation Server email notifications with an SMTP server that requires a user name and password. TFS does not directly support using a username and password to connect to an SMTP server but it is possible to work around this limitation by using an SMTP virtual server on the TFS AT. That virtual SMTP server can be configured to provide the authentication credentials that the “real” SMTP server needs when relaying messages. Please consult the following links for more details: As mentioned in the MSDN forum thread, Pete Sh...
Using the version control caching proxy server to speed up get
I've written about our experiences using the version control caching proxy server before, but I thought I'd post a screenshot that nicely shows the difference in bandwidth utilization. Before I do that, we were recently having a serious problem with our local caching proxy server being slow and sometimes not responding. Robert Horvick looked into it and figured out that the problem was caused by the NIC setting on the computer being incorrect. Yet again, we were bitten by the NIC setting not matching the network switch setting. Not surprisingly, the performance was phenomenally better....
Removing the Team Foundation Server association in Microsoft Project and Microsoft Excel files
Here's a handy tip if you find yourself needing to disassociate or unbind a Microsoft Project (.mpp) or Microsoft Excel (.xls) file from a Team Foundation Server, perhaps because you changed the name of the server, the server no longer exists, etc.Microsoft ProjectYogita Manghnani, a PM for TFS, posted the following process in the Team Foundation Server MSDN forum. Microsoft ExcelDennis Habib, a developer for TFS, provides the following process. Since this involves editing the registry, all of the usual caveats apply.
Team Foundation Server and CodePlex
If you haven't seen CodePlex, you'll want to check it out. It's Microsoft's shared community development web site, and it uses TFS to host development projects. Brad Wilson of the CodePlex team provides some nice answers to about 10 questions of general interest on TFS and CodePlex. Answering Questions About CodePlex and TFS Phil Haack has some questions about CodePlex and our use of Team Foundation Server that I'd like to answer. Note that I'm not trying to convince Phil to use CodePlex; rather, I want to clarify answers to his questions so that he and others can make the best decisions on their own....
Visual SourceSafe Sharing in Team Foundation Server Version Control
Lots of folks have asked for sharing in TFS version control. While we don't support it and don't encourage it as a best practice, Rob Caron mentioned that Component Software has produced an application called TFSLinks that adds sharing functionality to TFS. For those of you who can't live without VSS-style sharing, you might want to give it a try. The TFSLinks product maintains the relations between shared files and automatically updates all instances whenever a new revision is checked-in to any copy of the shared file. Shared files may be imported from your original VSS projects, or defined manually...
Quick guide to backing up your TFS databases
Jeff Atwood at Verigo Software has posted a nice visual guide to backing up your TFS data (based on the official MSDN TFS backup documentation).A Visual Guide to Backing Up a Team Foundation Server databaseHe promises to provide a guide to restoring the data as well.
Using TFS with Web Application Projects
There's a helpful FAQ posted in the ASP.NET forums regarding using Team Foundation Server with the newly released Web Application Projects for Visual Studio.Issue 6 - Using TFS Team Build Issue 6 - Using TFS Team BuildThe May 2006 release of Web Application Projects supports building with Team Build on a Team Foundation Server (TFS). However, you will need to manually add the "Microsoft.WebApplication.targets" file to your Team Foundation Server for it to work. After performing these steps Team Build should be able to successfully build a web-project build with the new Web Application Project type. A...
Editing documents anywhere using Outlook free documents
About a month ago, I wrote about using Outlook with RPC over HTTP. I recently stumbled across an old blog post by Jeremy Kelly called Using your Mailbox to Store Work-in-Progress documents. He mentions a feature called "free docs." Combining this with Outlook over HTTP is really very useful. Here's how it works. What's so cool about that? It's a secure way to be able to work on your documents wherever you have Outlook over HTTP (office desktop, laptop elsewhere), the file is updated in place, automatically synchronized (no more searching for the latest version), and backed up...
Compare the content changes in a shelveset with any checked-in version
I wrote this snippet recently to compare the edited files in a shelveset with an arbitrary checked-in version of the same files. It's another example of how to use the API to show differences. See How to compare (diff) trees at different versions using the API for a different example of comparing checked-in files.If you are just getting started with the version control API, you'll want to start with the basic example.using System; using System.Collections.Generic; using System.Diagnostics; using System.Text; using Microsoft.TeamFoundation.Client; using Microsoft.TeamFound...
Switching source control providers in VS prior to VS 2005
Back in 2003, Korby Parnell listed a couple of tools to switch source control providers. The interesting one was Sourcecode Control Switcher by Soenke Schau. It adds it self into the task tray to make switching providers really simple. I didn't try it, but it looks like it may be a good way to goAnother possibility is to create Windows shortcuts. Make a pair of batch scripts each containing one of the reg command lines that Ed Hintz posted. Then create Windows shortcuts to each batch script, perhaps on your desktop. Right click on each and choose Properties. In the Shortc...
How to perform a silent install of Visual Studio 2005 Team Explorer
Aaron Stebner has a nice post showing the steps need to create uattended installations of Team Explorer (aka TFC, Team Foundation Client). How to perform a silent install of Visual Studio 2005 Team Explorer I have previously posted instructions for performing a silent installation for Visual Studio 2005 and the Visual Studio 2005 Express Editions. A customer read those previous blog posts and asked a follow-up question about how to perform a silent installation of Visual Studio 2005 Team Explorer, which is the client software needed to access Team Foundation Server. Team Explorer setup is architected i...
TFS Alerts: From address and filtering
On internal mailing list, the following questions came up regarding the auto-generated check-in mails from TFS. Jeff Lucovsky replied with the following information, which I've edited slightly. In an earlier email, a similar question regarding work item tracking alerts came up. Does anyone know of a way to define rules to trigger automated email notifications when a certain field’s value in a work item is changed?Pete Sheill responded with the following. He's also got a related blog post on using bissubscribe.exe. There is a way to do it through a command line tool called BisSubscribe, which is a...
Problem with checking in from a Microsoft Content Management System solution
This has come up twice now, so it seems to be worth posting in the hopes that folks will find it when searching for the error message.Here's the scenario. Ben Ryan, a developer on version control, describes the problem and the workaround as follows. The root cause of the problem is that the CMS Service Pack that adds support for Visual Studio 2005 is built against a version of the Microsoft.VisualStudio.Shell.Interop.dll assembly that is incompatible with the version we ship with other products (i.e. VSIP 7.1 and VSIP 8.0). Therefore, the IVsHierarchy that Microsoft.ContentManagement.DeveloperTo...
Updated MSSCCI Provider
[UPDATE April 8] The download page works now, and the link is now up to date.Brian Harry posted an announcement today that there is a new release of the MSSCCI provider for non-VS2005 environments. This one actually has signed binaries. ;-)Here's the summary from the download page. Overview The Visual Studio Team Foundation Server MSSCCI Provider enables integrated use of Team Foundation Version Control with products that don't support Team Explorer integration. Instructions Download and run Visual Studio Team Foundation Server MSSCCI Provider.msi on a computer with one of the following products:
How to compare (diff) trees at different versions using the API
Recently the question of how to compare files and folders came up. TFS version 1 doesn't have the project difference type of functionality that was available in VSS. So if you want to write your own, this code sample will help you with the calls to get the information you'll want to display. The code shows two different approaches to getting the information. The first approach is to use the GetExtendedItem() method that Source Control Explorer uses to get much of its information (SCE also uses QueryPendingSets() to be able show the other users with pending changes on an item, but ...
Installing TFS, the short version
Jeff Atwood at Vertigo posted his version of Cliff's Notes for a Team System Install, including links to get the trial versions of everything required. If you aren't going to read the official guide, you might try his approach. I know no one reading this blog would take shortcuts...but just in case.Meanwhile, you can still get a Virtual PC image with the TFS release candidate from MSDN subscriber downloads. It's under Developers Tools | Visual Studio 2005 | English | Visual Studio Team Foundation Server | Visual Studio 2005 Team Foundation Server Trial Edition (English) | Vis...
How to detect whether Team Explorer is installed
On an internal list, the question of how to detect whether Team Explorer is installed came up. I didn't know the answer, and I figure there are others that would like to know this.To detect Team Explorer, look for the registry key HKEY_LOCAL_MACHINESOFTWAREMicrosoftVisualStudio8.0InstalledProductsTeam Explorer with a DWORD entry called UseInterface having a value of 1.From the command line, you can use the reg command to query the registry.D:>reg query "HKEY_LOCAL_MACHINESOFTWAREMicrosoftVisualStudio8.0InstalledProductsTeam Explorer" /v UseInterfaceHKEY_LOCAL_MACHINESOFTWAREMicrosoftVisualStudio8.0Instal...
Want an easy way to search MSDN blogs?
While there are other ways to accomplish it, the MSDN Enhanced Search provides an easy way to search MSDN blogs. Give it a try: Search MSDN Blogs.
DIY: Running TFS using a named instance in SQL
The question about using a named instance with TFS has come up several times, and it came up again today on an internal mailing list. As to why we don't support it in V1, Brian Harry states that it was the time to get it into setup and the additional testing that led to the decision to postpone it to a future version.However, for those of you who want to try it, there is a "do it yourself" approach. Bill Essary posted the outline of how to do it in the following forum post. I've copied the answer below, and added some links to the TFS admin utilities and SQL docs. Keep in mind this is...
Using Outlook with RPC over HTTP is great
Not too long ago, I finally got around to configuring Outlook to use RPC over HTTP on my laptop and my desktop at home so that I can get to my work email more conveniently. I love this feature and wish I had done it a lot sooner. Outlook Web Access is great for places where you don't have your own computer, but it's not the same as the full Outlook.If you use Outlook, give it a try. If you work at Microsoft, you can find the instructions on the lower left of the Outlook Web Access front page.
Licensing differences between TFS Workgroup Edition and TFS Standard Edition
Recently Ajay Sudan, Product Manager for VSTS, answered a question regarding some confusion over the differences between TFS Workgroup Edition and TFS Standard Edition. Here is how he summed it up. TFS Workgroup Edition is not licensed on a Server/CAL model. This means CALs are not required when using the Workgroup Edition. For this reason, the Workgroup Edition does not include any CALs. TFS Workgroup Edition can be used by 5 unique users using any client (MSSCCI, 3rd party client, VS Pro, Team Edition, Project, Excel, etc.). Once you grow beyond 5 users, you’ll need to upgrade to TFS Standard Editio...
TFS standby application tier and database clustering
Keith Hill had seen mention of a standby application tier in the slides I posted and asked for more information. I sent email to Bill Essary, and he replied with the following links covering server availability.Ensuring Team Foundation Server AvailabilityYou can control when you take the servers offline for maintenance. However, you must also consider how you want to handle unexpected failures. By applying one of three basic strategies, you can make sure that the servers are available to the clients during maintenance or failures. The strategy you select is determined by the amount of down-time the users ca...
Update on the TFS source control provider for applications other than VS 2005 (MSSCCI provider)
Brian Harry has posted an update on the status of the TFS source control provider. It's currently scheduled for release the week of April 3rd.Here is the list of applications tested. There are more applications that support the MSSCCI provider model than we have resources to test, so he also requests your help in reporting issues with other applications. Check out his post for more information.
How to move your Team Foundation Server
There is now draft documentation available that describes how to move a TFS server.Moving Your Team Foundation Server Deployment
Slides from a TFS version control presentation
Yesterday, Ed Hintz and I gave a "brown bag" presentation in Redmond for some internal groups that will begin using TFS. I've created a public version of the slides and attached it to this post. The presentation goes over a few concepts (the intended audience is already quite familiar with source control), shows some common operations with the command line, gives an overview of how to write tools that use version control, both using the client API as well as VS add-ins, and introduces the command available in tfpt.exe. TFSCCBrownBag-public.ppt
How to check in changes on behalf of other users
Recently someone asked how to check in changes for another user. There are at least two good scenarios where this is needed. One is for check-in systems such as the Gauntlet system we used internally during the development of TFS. Rather than check in directly, developers would shelve their changes and put them in the Gauntlet queue. Gauntlet would unshelve one shelveset's worth of changes, build the code with those changes, run a small set of tests, and then check in the changes on behalf of the user who created the shelveset.Another important scenario is for converting an existing system...
How to validate check-in policies, evaluate check-in notes, and check for conflicts
In the version control API, the CheckIn() method does not evaluate check-in policies and validate check-in notes. It provides with the ability to supply both an override comment and check-in notes, as applicable, but the evaluation and validation must have been performed prior to calling CheckIn(). The reason for this is that in a real-world application, you will evaluate check-in policies and validate check-in notes at points in time that make sense for whatever you are writing. For example, the Visual Studio environment will evaluate check-in policies when certain events are triggered.&nb...
More posts from Tim
Tim Noonan is on a blog-posting roll. Not long ago, he did quite a bit of work to get better performance in Visual Studio when dealing with large numbers of pending changes, among other things. Much of the performance improvements came from better use of the ListView: inserting initial items and setting checked states.He's also posted a preview of new review command features that will be available in the next release of tfpt (Team Foundation Power Toys). The current release is available in the VS March CTP SDK.
Manually modifying TFS databases is a bad idea
Over the last several months, I've seen folks post SQL hacks to modify TFS databases, usually to try to work around some limitation such as not being able to delete work item types. Marcel de Vries, a Microsoft MVP who has been using TFS for quite a while, recently wrote a post on his experience in trying to do this. As he mentions, there are many relationships and dependencies that are not obvious, and sometimes you won't find the problems until much later. Don’t change a TFS database by hand; How I got myself in real trouble
How to get the login dialog when using the Team Foundation Server API
Someone asked how to get the login dialog if the user fails to authenticate. The code to do that is shown below. I copied the call to the constructor from the basic API example, and I've added code to create and pass a UICredentialsProvider object to the TeamFoundationServer constructor.Also, I'm now calling EnsureAuthenticated(). The purpose of that call is to make sure that the user is able to authenticate with the server. If not, the TeamFoundationServer object will use the UICredentialsProvider to display a login dialog. If the user authenticates successfully after entering a use...
Team Foundation Server – version 1.0!
Rob Caron posted about Rick LaPlante's public announcement at SD West that TFS ships tomorrow!
Team Foundation Version Control client API example (RTM version)
[Update 3/10/2012] If you are using TFS 2010 or newer, there is an updated version control client API example.[Update 6/13/06] While the documentation is not what it needs to be, you can find reference-style documentation on a significant amount of the API in the VS SDK (current release is April): http://blogs.msdn.com/buckh/archive/2005/12/09/502179.aspx.I've updated this sample a few times before. 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 samp...
Tfpt.exe command reference
Attached is a Microsoft Word document containing the documentation for the tfpt.exe power toy commands, including screenshots. [UPDATE 8/9/2007] I fixed the broken link to the power tools page. [UPDATE 9/9/2006] TFPT is now available as a separate download (you no longer have to download the massive VS SDK). You can download from http://go.microsoft.com/?linkid=5422499 and find more details in this post. The installation package also contains an updated Word document that covers all of the commands and features in TFPT. Team Foundation PowerToys.doc
TF14107: The changes could not be checked in due to an incompatible change in another workspace
When a rename is checked in, the server paths for other workspaces’ pending adds and branches are updated according to the rename being checked in. If the server cannot update one or more server paths in the pending adds or branches in other workspaces because it would cause two pending changes to reside at the same server path (the server allows only one pending change per target server path), the checkin fails with the error message, "TF14107: The changes could not be checked in due to an incompatible change in another workspace."This error is correctly triggered when someone else has an add or...
Registry settings to make VS start up faster
A while back, I wrote a post on how to get better performance from the tf.exe command line. Today, Tim Noonan, our resident hippie dev from version control land, posted about a couple of registry settings that can help improve the performance of VS with TFS. The first helps with startup and the second helps with opening solutions. A couple helpful Team Foundation registry settingsHere's a couple of registry options that never made it into the UI anywhere that some of you may find useful.
Annotate (also known as blame) is now a power toy
[UPDATE 8/9/2007] I fixed the broken link to power tools page. [UPDATE 9/8/2006] TFPT is now available in its own small download: http://go.microsoft.com/?linkid=5422499! You no longer need to download the VS SDK. You can find more information about the September '06 release here.One of the features that we had to cut for version 1 was annotate, which is also known as blame in Subversion. We had hoped to provide a power toy that at least provided the basics, and the Visual Studio 2005 SDK – March 2006 CTP for v2 contains an updated tfpt.exe with support for ...
All about the caching proxy for version control
Rob Caron posted the following the other day, and I've copied it below. If you want to learn more about how we cache versions of files to speed up downloads, including get, view, diff, and more, you'll want to take a look at this. Team Foundation Server Proxy Screencasts We just posted a series of six screencasts by Swamy Subramanian, a developer on Team System, that go into great detail about the inner workings and configuration of Team Foundation Server Proxy. TeamFoundationServerProxyScreencasts.zip
Configuring different diff/merge tools for Team Foundation Version Control
Many of you probably know that you can specify your own diff/merge tool. One thing that's not mentioned on that documentation page is that you can specify * for the Extension field to change the default diff or merge tool.James Manning recently put together a nice post on configuring different diff and merge tools, making it easier to properly configure the tool of your choice. This is most useful for merge, where for v1 a number of other available tools offer a better experience than diffmerge.exe in the more complex cases. Diff/Merge configuration in Team Foundation - Common command and argumen...
How to change the computer name and update the owner name for a workspace
As part of the information about a workspace, the version control server records the name of the computer that hosts a workspace and the user that owns the workspace. If you need to change your computer name or your user name, how do you tell the server to update the workspace information?The command line, tf.exe, provides two options, /updateComputerName and /updateUserName, on the workspaces command to address this issue. Note that in version 1 you must use the command line for this. Also, you may notice that the documentation on MSDN shows that these options do not accept values, but tha...
How to create shadow folders in TFS
One of the features from VSS that TFS does not support "out of the box" is shadow folders. Last year, one of our interns, Philip, wrote short guide to setting up shadow folder for TFS by using Scheduled Tasks in Windows (he also wrote tfpt.exe). I've attached the MS Word document to this post. You can read the introduction below. Another use for this is to prime the version control caching proxy at a remote location to minimize the amount of time users have to wait to get files from the version control repository. Shadow Folders with Team Foundation Version Control Microsoft Team Foundation Ver...
Working around not being able to delete a work item type
The following question came up in the forum: "How do I delete the custom work item type that I created?" Tony Edwards posted the following. One other thing that comes to my mind is to have a second server to use for experimentation before applying changes to the production server. It is not possible in v1 [to delete work item types]. This question came up recently and Bill Essary gave the following guidance for mitigating the problem: Here are a few things that you can do: 1) Change the name of the type to something like “(Deprecated) Bug” so that users ...
Listing the process templates on a TFS server
In response to a forum question about how to list the process templates on the server, Tony Edwards, a developer on Work Item Tracking, posted the following code snippet showing how to do it. The TeamFoundationServer object provides a number of services, including one for dealing with process templates. Here is a simple console program to list the templates. IProcessTemplate has members that return XML - you could bind that to the grid. You would invoke the sample below as follows: templateheaders http://<your_server>:8080 using System;using System.Collections.Generic;using Syst...
Want to influence the next version of TFS? Now is the time!
Brian Harry has a new post requesting your input for the next version of TFS. The team has just started planning for TFS, so now is the best time to let him know what you would like to have in the next version. Team Foundation Server and the Future With V1 now mostly behind us we're starting to look ahead to what comes next. We're collecting the lists of everything we wished we had been able to V1 and all of the suggestions that we've gotten from customers - forums, email, MSDN Product Feedback Center, etc. We're also taking a high level look at what the core value proposition(s) for&n...
Determining the amount of space required to store files and work items
Recently someone asked how to estimate the space required for the databases on a Team Foundation Server. To do that, we can take a look at our own dogfood server to see where the space goes. With that information and some knowledge of how the system works, we can come up with a useful way to estimate the approximate space required by the TFS databases. Version Control If we start with the version control database, we currently have 1.7 M files and folders, so that works out to about 77 KB per item (size of the version control database divided by the number of items). That’s avera...
Robert Horvick’s blog posts on branch and merge history
Robert Horvick, now a dev on the version control team, has been writing a series of posts on using the branch and merge API methods. If you want to explore that area, I recommend checking out his posts.Following merge history using the TFS command line is the introductory look at what he's trying to do. Then he walks through creating a tool to determine whose contributed what via merging.
TFS MSSCCI Provider Beta 2 is available — disable strong name validation
As has been announced in several different blogs, the second beta of the MSSCCI provider is available, providing VS integration for users with VS 2003 and earlier (you cannot use it with VS 2005, because we provide the full experience with Team Explorer in VS 2005). For it to work, you will need to disable strong name validation for the beta 2 assemblies. They are not strongly named (signed) binaries. If you do not disable strong name validation, you will receive two error messages. TFMscciSvr.exe has encountered a problem and needs to close. We are sorry for the inconvenience. There was a failure wh...
Updating TFS event listeners to work with RC and RTM releases
You may have read before about the fact that the TFS protocol version number changed between beta 3 and RC. As a result, you have to upgrade pre-RC clients when you upgrade the server to RC or RTM (the version number for RTM should be the same as RC).The other thing you'll need to update is any web services that you have subscribed to TFS event notifications. For example, I updated the Continuous Integration example code from Doug's TechEd presentation.In your code, you'll need to change the "02" to "03" in the SoapDocumentMethod attributes.Old: [SoapDocumentMethod("http://schemas.mi...
Branch and merge and other useful posts
Rob Caron pointed out a post over at Vertigo Software regarding the tf.exe command line (I like the command line too, but I'm biased :-). There's also a nice post on branching and merging, along with quite a few other useful posts. Check it out.
List of tools and add-ins for TFS
Richard Hundhasen mentioned that he's trying to keep a list of tools and add-ins for TFS at http://teamsystemexperts.com/widgets.aspx.
Permission tool beta: One tool to set permissions for TFS, SharePoint, and Reporting
There have been quite a few requests for a single place to set permissions in TFS, SharePoint, and SQL Reporting Services. The Developer Aftermarket Community Solutions team in Developer Division at Microsoft just released the first beta of an administration tool for this purpose. Kannan, the lead developer on the tool, posted the announcement(screenshot).Here is the description from the GotDotNet project. The TFS Administration Tool allows a TFS administrator to quickly add users to all three platforms utilized by TFS: TFS, Sharepoint, and SQL RS, all through one common inter...
Renaming folders that are explicitly mapped
Internally, someone wanted to rename a folder and received an error instead of having the folder moved. When trying to rename $/ProjectA/Folder1 to $/ProjectB/Folder1, the user received the error message, "TF14097: Cannot rename $ProjectA/Folder1 when it has a working folder mapping assigned to it."If you run into that, here's what it means. The system does not allow you to rename an item that is explicitly mapped. If you bring up your workspace mappings (File -> Source Control -> Workspaces, select your workspace, and click Edit), you will see that $/ProjectA/Folder1 is listed in the mappings.&...
TFS Version Control post summary
Now that the RC is out, I thought I'd post a summary with links to version control posts from the last several months that I think are relevant. Clark Sell posted a VSTS JumpStart with useful links as well.Here are some posts from James Manning you may find useful. For those of you out there who want to add your own "power toy" to enhance the TFS version control experience in VS, check out How to Write a Team Foundation Version Control Add-in for Visual Studio by Ed Hintz, which also includes adding TFS assemblies to VS. You could add features like baseless merges, merge history, listing...
Using Team Foundation in Eclipse with the TeamPrise plug-in
I'm still catching up on what's been going on, and I found this on Grace Francisco's blog. I've highlighted the end of the summary where it mentions using TeamPrise on Linux. MSDN Webcast: Accessing Visual Studio 2005 Team System Using the Teamprise Plug-In for Eclipse (Level 200) Find out how you can use the Teamprise Plug-in for Eclipse to access the source control features of Microsoft Visual Studio 2005 Team System from within the Eclipse integrated development environment (IDE). In this webcast, we show you how to add new Eclipse projects to a Microsoft Visual Studio 2005 Team Foundation server, import...
How to upgrade to Team Foundation RC
The Team Foundation RC should be available for download sometime today, and Jeff Beehler provided a high-level description of what's changed. His first point is the most significant. There are many, many bug fixes in the RC compared to beta 3. For version control, merge has improved the most. It's quite a bit faster and more robust.Rob Caron has posted information on upgrading from beta3 refresh to the RC, including the Team Foundation RC Installation Guide. Those with beta 3 installed will need to upgrade their servers to beta 3 refresh to then upgrade to the RC. Clients just ...
VSTS Load Test team bloggers: Ed Glas, Bill Barnett, Josh Christie
One of the many great parts of Visual Studio Team System is Load Testing. As one of the three original projects here in the Durham, North Carolina office, it was known as Ocracoke originally (Version Control was Hatteras, and Work Item Tracking was Currituck -- all three are islands in the North Carolina Outer Banks).The Load Testing team continues to ramp up on blogging. In addition to Josh Christie, Ed Glas, group manager, and Bill Barnett, developer, have started blogging. Other team members that don't have their own blogs will also be contributing posts. It's a great way to l...
Baseless merges now record history
Back in June, I wrote a post on using baseless merges to establish a merge relationship between two items where neither was branched from the other. A week after I posted it, I had to go back and change it to say that baseless wouldn't record merge history for v1, and thus you would only be able to merge items where one was a branch of the other.I'm happy to say that's been fixed both for the RC (available tomorrow) and RTM (available in March)!So, if you have two folders, projectX and skunkWorksX, where neither is a branch of the other, you can establish a merge history between the two by running "tf merge...
How to add the Team Foundation assemblies to the .NET tab in the VS Add Reference dialog
To write an app using the Team Foundation API, you're going to need to reference assemblies that are in the GAC. It's not possible to add a reference to a .NET assembly in the GAC in VS when you need to add a reference to an assembly.The GAC'ed Team Foundation assemblies are also copied to the PrivateAssemblies folder under the VS directory. When you want to add a reference to a TFS assembly in VS solution, you can choose Browse and find the assembly.To make it more convenient, you can also add the TFS assemblies to the .NET tab in the Add Reference dialog. This knowledge base article ...
Migrating CVS and Subversion repositories to Team Foundation Server
A number of users have asked about converting existing CVS and Subversion repositories to Team Foundation Server. While we have no plans to produce such, we had hoped third parties would. Today someone from Component Software posted an announcement of such a converter.Here's the description from their web page. CS-Converter is a powerful and reliable conversion tool, used to migrate from various legacy version control systems (such as RCS, CVS, Subversion and Visual SourceSafe) to Microsoft Team Foundation Version Control (TFVC) system.Disclaimer: I don't have any relationship with the company, haven'...
Locks based on file types (extensions) and shelving
Recently, someone asked about locks, shelving, and buddy builds (i.e., shelving your changes and unshelving and building them in another workspace to make sure everything builds cleanly). I am trying to add a number of files into our source control. The list of files I want to add contains a few each of .ico and .bmp, and one .xls files, all which get locked (locked to prevent check-out) when I add them, presumably because they cannot be merged if someone else checks them out and changes them. The fact that they get locked seems to deny the possibility of buddy building, even on my own second machine, ...
Disabling or changing output colors used by the command line (tf.exe)
In the forum, a user asked how to turn off the colors used in the output of the version control command line for Team Foundation (tf.exe). I thought I'd repost it here.Question When tf.exe (beta 3 refresh version) displays an error message the text is colored in yellow on black. My command prompt windows usually have black text on white background. Is it possible to let tf. exe display all output without changing the color, e.g. via an environment variable?Answer You can change or turn off the coloring by changing the settings in tf.exe.config (in the same location as tf.exe). Here is the list of display...
Beta TFS MSSCCI plugin now available for VB6, VC6 (not yet VS 2002/2003)
Brian Harry announced the availability of the beta TFS MSSCCI plugin for VB6, VC6 (not yet VS 2002/2003).You can download it at http://www.microsoft.com/downloads/details.aspx?familyid=32202966-EF04-442F-8C5C-88BDF15F551C&displaylang=en.Buck
How to improve command line performance
If you are using the tf.exe command line in scripts to convert from another version control system or to run other tasks that involve a lot of calls, there are several factors that have a large impact on the performance. Other than the command files, all of the following applies to Visual Studio as well, but VS has the significant advantage of amortizing one-time overhead across a long execution time. The command line pays one-time costs every time it runs, so it's important to minimize those costs when performance matters.Check LAN connection settings (applies now and for RTM)First, ch...
Backing up and restoring Team Foundation
Rob Caron posted a link to the re-launched VSTS User Education team blog. It includes a post of the procedures for backing up and restoring Team Foundation Server. That includes the databases, SharePoint, reports, etc. It also includes restoring TFS to a different server. There have been lots of requests for this in the forum, so now's the time to give it a try.They have also posted documentation on permissions and the default groups, roles, and permissions.Since this is pre-release documentation, be sure to email them with any problems in the documentation.[Update 3/2/06] You c...
Team Foundation Version Control API documentation
I've mentioned the Team Foundation Version Control client API example before as good way to get started with the API, and there are examples with labels and items too. You can find documentation for the classes and methods in the Team Foundation Version Control API in the October Visual Studio SDK release. Once you install it, you can find the Version Control API doc in C:Program FilesVisual Studio 2005 SDK2005.10VisualStudioTeamSystemIntegrationVersion ControlObject Model (Help 1.x format).zip.
The “Filter by solution” button
You are probably familiar with the Pending Changes window if you've been using Visual Studio with Team Foundation (View -> Other Windows -> Pending Changes). Have you ever wanted to have the Pending Changes window show only the pending changes for files in the currently open solution and not all of the other changes in your workspace?There's button, called "Filter by solution," that does exactly that. It's located between the Refresh button and the Workspace selector.The button acts like a toggle. When it's in the "active" state, the Pending Changes window restricts the list of pendin...
Warehouse troubleshooting guide
Bryan MacFarlane posted a troubleshooting guide for warehouse problems in the MSDN Team Foundation Forum. If you are having problems with your warehouse or reports, it's a good resource to try to figure out what's going wrong.
Source Control Explorer now shows more information about the state of items
One of the problems that users encounter when using Source Control Explorer is knowing what state the file or folder is in, particularly if it is shown in gray rather than black text. In beta 3 refresh and ealier, gray text meant that the file or folder was unmapped, cloaked, deleted, or not downloaded. There was no way to tell a deleted file from a cloaked file, for instance. It often left users asking the question, "Why is that file (or folder) gray and how do I change that?"Recently, we added more information to what Source Control Explorer shows simply by changing the "Latest" column to...
Using VS to get the URI for a Team Project
Someone asked a question today about getting the URI for a Team Project. James Manning's Team Project code sample showed how to do it using the API. However, that was overkill in this case. Bill Essary pointed out that you can select the Team Project in Team Explorer, right-click on it, and choose Properties (rather than right-click, you could just hit F4). The Properties window shows the URI as the Url property (yes, apparently no one noticed that).The URI you get will look something like the following. All Team Foundation URI's start with "vstfs:///" that will be tranlated to actua...
New CTP of Team Foundation is available (NOT supported by go-live)
Jeff Beehler has just written a post about the newly-released December CTP of TFS. Jeff describes some of what changed, but probably the most important thing is that it is NOT supported under the go-live license. There will not be any migration scripts to move to it or from it.The reason for that is that this release hasn't been through much formal testing. Sure, we upgraded our dogfood system with it, so we think it works well enough. But the goal here was to get a drop out for folks to test out all of the changes we've made, though not in production use.If you do try it out and find...
C# 3.0 features
I just read Ian Griffiths' post on C# 3.0 and LINQ - Expression Trees (linked from Jomo Fisher's C# 3.0 post, which was linked in John Rivard's Why Visual Studio targets only one version of the .NET Framework, which was in a link from Soma's Multi-targeting of .NET FX in Visual Studio post, which I received in an email notification). He provides a link to the C# 3.0 spec, which I read through quickly before reading his post. I hadn't looked at any of this stuff that was evidently unveiled publicly at PDC '05, so this probably isn't news for a lot of people.Anyway, reading Ian's blog post tied the...
How to diff Word documents
John Lawrence responded to someone's question about how to diff MS Word documents, and I thought the answer would help a few more folks. Team Foundation enables you to specify different diff and merge tools for different file types. We don’t have a built in compare tool for .doc files but I did a quick search and found quite a few available for download (e.g. http://www.documentlocator.com/download/difftools.htm). I don’t know if we have any specific recommendations. I installed DiffDoc (because it was free… http://www.softinterface.com/MD/MD.htm) and configured it to be my diff tool for .do...
Team Foundation Beta 3 Virtual PC is available
The last time I wrote about the VPC for beta 3, it didn't make up to MSDN like it was supposed to. Well, a beta 3 VPC is available now, and a beta 3 refresh VPC will be available as soon as it makes its way through the infrastructure (yeah, I know, trust me at your own risk).The beta 3 VPC is under Visual Studio 2005 -> Visual Studio 2005 Team System Release Candidate -> Visual Studio 2005 Team System Release Candidate VPC (English). The description is copied below. Description Thank you for evaluating Visual Studio 2005 Team Suite RC and Visual Studio 2005 Team Foundation Server Beta 3. This...
1,000,000 files in the dogfood system
Jeff Beehler just checked in another 100,000 files, pushing us over 1,000,000 files. We now have 1,042,659 files in the dogfood system. Brian Harry sent out a dogfood statistics update in email today, prior to Jeff's check-in. Watch for the latest stats on John Lawrence's blog.
Power Toy: tfpt.exe
[UPDATE 8/9/2007] I fixed the broken link to the power tools page. [UPDATE 9/8/2006] TFPT is now available in its own small download: http://go.microsoft.com/?linkid=5422499! You no longer need to download the VS SDK. You can find more information about the September '06 release here.Back at the start of October, I wrote about the tfpt.exe power toy. The beta 3 version has been released with the October SDK release. In the future, we plan to have a better vehicle for delivering it.Here's the documentation, minus the screenshots, in case you are trying t...
How to work around the diff viewer problem in Team Explorer Beta 3
If you install only the Team Explorer (and not VSTS), there is a known issue (7.3) where the diff viewer won't work. It also affects the built-in merge tool, but I think that's less painful for users who just need Team Explorer.The tool is diffmerge.exe, and it uses msdiff.dll. The msdiff.dll needs several missing several VC runtime dlls that normally get installed as part of the VS installation.To work around this problem in beta 3, you can hook up a third-party diff tool. Just go to Tools->Options->Source Control->Visual Studio Team Foundation Server and click on Configu...
How to upgrade from TFS Beta 3 to RTM
Allen Clark has posted the document on upgrading beta 3 to RTM so you'll know what to expect. Preparing to upgrade to RTM If you’re using Beta 3 Refresh, you may be wondering what you can do now to make the server upgrade to RTM as painless as possible. Here are a few things that will help. I’ve included the specification below so that you can get a better idea of what the upgrade will be like and let us know if you feel like we haven’t covered your scenario. Keep in mind that this isn’t final, but the actual upgrade will be similar to what’s described here. Allen Clark Prog...
Go to Changeset coming for RTM
You still won't be able to drag and drop in Source Control Explorer (some changes are just too large at this point), but you will be able to go to a changeset (without going through the back door using Get Specific Version solely for changeset look up). In the next drop, the Edit -> Go to menu item will bring up the Find Changeset dialog when the Source Control Explorer has focus. Also, it should appear on the Team menu.How about a power toy VS plugin to fill in the gaps?There are lots of things we'd like to do, but we can't at this point in the cycle. We are thinking about putting together a...
Brian Harry on when to ship TFS
About half way through a thread on unlocking files locked by another user, Brian wrote a long response in the Team Foundation Forum about deciding what changes to make at this point and knowing when to ship. It's a good read. I expect that Brian will likely turn it into a blog post at some point.
Validating XML characters in SOAP messages
I've written about using the SoapHttpClientProtocol subclasses generated by wsdl.exe several times over the last year, including handling authentication, HTTP response codes, and setting timeouts properly. Today I needed to change the code in TFS to better handle characters that are not allowed in XML. The problem is that if you have a method on your web service that takes a String parameter, someone may call that method with a string that contains characters that are not allowed in XML. That input may come from a command line switch or a text box in a GUI. The XmlWriter use...
Work Item Tracking will use display names for RTM
In beta 3 (including refresh) and earlier, work items have always been assigned to user names. For some organizations, that's a real problem, as the user names do not have any relationship to the user's real name. We have fixed this for RTM. Brian Harry sent the following email about it, and I thought it was worth sharing (substituting Joe Developer for an actual employee's name). It's another example of where customer feedback has had a significant impact on the product. We went round and round on what to do about this. For most of the product cycle TFS has used peoples' aliases ev...
Getting email when someone overrides a policy
James Manning today pointed out a post from Marcel de Vries showing how to register for email when someone checks in after overriding a policy failure. While any policy failres and override comment are included in the standard check-in email, this allows you to get an email specifically when someone overrides a policy failure. It's only a few lines of code, and it uses the built-in event system support for sending emails. He even provides a link to a zip file with the solution.How to receive email on a Team Foundation check in policy violation[Update] He mentions in the post that the d...
Beta 3 refresh released
Beta 3 of TFS has now been released and should be available on MSDN today (or very soon :-). The differences between beta 3 and beta 3 refresh are small for most things. Jeff Beehler wrote about some of the beta 3 refresh differences two weeks ago. The most important reason for the beta 3 refresh is that it is built against and uses all of the final release versions of Visual Studio 2005, .NET 2.0, and SQL Server 2005. Beyond that, many of the fixes in it were to enhance the setup experience and to address a few localization issues. So, if you are wondering whether some particul...
Changing the encoding of a pending add works for RTM
I had mentioned in my September 10th post on file type detection that you couldn't change the encoding on a pending add, without undoing the add and re-adding it. While it won't work in beta 3 or beta 3 refresh, you'll be able to change the encoding on a pending add in the next public release. That means you can use the edit command with /type option from the command line or the properties dialog in the GUI to tweak the encoding before checking it in.
Displaying the sizes and dates of files in the server
Have you wished that the output of the dir command from tf.exe would show you the dates and sizes of the files like cmd.exe's dir command? Even though tf.exe won't do that in version 1, the version control API provides the call necessary. This little app is similar to my last post on displaying labels on a file. You can find a simple example of creating a workspace, pending changes, and so forth in my September API example. The GetItems() method is the key part of the app. Here's the declaration on the VersionControlServer class. public ItemSet GetItems(String path, RecursionType rec...
Displaying the labels on a file, including label comments
Unfortunately, there's not a fast, efficient way to see the list of labels in the system with the full comment without also seeing a list of all of the files included in a label. You also can't efficiently answer the question, "What labels involve foo.cs?" While this won't be changed for v1, you can certainly do it using code. I mentioned on the TFS forum that I'd try to put together a piece of code to do this. The result is the code below. The code is really simple to do this, but I ended up adding more to it than I originally intended. All that's reall...
Web Load Testing webcast Tuesday (Oct. 25) at 1:00 pm PST
If you want to learn more about web load testing in VSTS, you'll want to check out Ed Glas' webcast on Tuesday, Oct. 25. Brian Harry has been using VSTS load testing developed by Ed's group to answer the question, "How many users will your Team Foundation Server support?" Find out how you can do the same for your own web site or web service. MSDN Webcast: Load and Web Testing with Microsoft Visual Studio 2005 Team System (Level 200) Start Time: Tuesday, October 25, 2005 1:00 PM (GMT-08:00) Pacific Time (US & Canada) End Time: Tuesday, Oct...
Team Foundation Beta 3 Virtual PC is headed your way
The beta 2 Virtual PC image was hugely popular. The new Team Foundation beta 3 VPC image is now making its way up to MSDN. So, later today or Monday you'll be able to download and run a single-server and client beta 3. Just make sure you have plenty of RAM since you'll be running everything on one machine (say 2GB+).
Beta 3 known bug when comparing large files: “Invalid access code (bad parameter).”
In the forum, Carl Daniel reported getting the message "Invalid access code (bad parameter)" when comparing two different versions of a file in Team Foundation Source Control Beta 3.Unfortunately this is a bug that was discovered and fixed after beta 3 was released. The problem is that large files (on the order of 500K) will crash the diffmerge.exe tool. I'm not certain as to the exact size that begins to trigger the problem.If you hit this bug, you'll need to work around it by using another diff tool until a newer public release fixes the problem (the upcoming beta 3 refresh will still have this...
September dogfood statistics
You can find the latest dogfood statistics on Brian's blog.[Update 10/12] John Lawrence also has the statistics as usual, including Excel charts. I saw Brian's, and I didn't think to check there.
SQL error in get with beta 3
On the forum, a couple of users have run into this issue with get, so I thought I would mention it here.There's a known issue in beta 3 where mapping a server path to a local path that exceeds the NTFS limit results in a SQL error message. The RTM code will give you a nice message to that effect rather than the SQL error message. A database error occurred (SQL error 8152) ---> String or binary data would be truncated. MyServer.TFSVersionControl..prc_Get: Database Update Failure - Error 8152 executing EXECUTESQL statement for #versionedItems The statement has been terminated.If you run into this...
Ed Hintz has started blogging
Ed Hintz has started blogging with a post that describes some of the differences between working with SourceSafe and working with TFS. Ed's the dev lead for the source control client team and is the person to whom I report. So, check it out and be sure to let him know about the things you do and don't like in the TFS source control integration for VS 2005. Your feedback will not likely change v1 at this point, but if you want to influence the next release, now is the time to speak up.
TFS version control command line: tf.exe
For folks who like command lines or those who've found the typical command line experience a little spartan, you should try tf.exe.One interesting feature of our command line is that it uses dialogs for a number of commands when you are running it interactively (i.e., you don't specify /noprompt or /i). For instance, you get the same check-in dialog from the checkin command in tf.exe as you get from VS.The following commands bring up the same dialogs you'd find in VS. That makes working with the command line a lot more convenient than you might otherwise think. You can find the command line d...
Brian Harry posts about the changes between beta 2 and beta 3
A while back I wrote a little about what's changed since beta 2 and the release of beta 3.Brian Harry, the person who heads Team Foundation (he is Product Unit Manager), has just written the post about what changed. In What's new with TFS Beta 3?, he covers the whole product, as you might expect. You'll want to read it.One of the things he mentions is something new, tfpt.exe. That is a power toy that provides some very useful features that didn't make it into the regular product. We've been using it internally now for a little while. I'll post more about it when it is ...
Using Source Code Control in Team Foundation
Chris Menegay's article on MSDN, Using Source Code Control in Team Foundation, provides a good overview of some of the major features. As a part of Visual Studio 2005 Team System and the new Team Foundation Server, Microsoft is providing a true enterprise-class source code control system. Team Foundation Version Control (TFVC) is provided as part of Team Foundation Server and offers integrated source control for Visual Studio 2005. Make no mistake about it: TFVC does not share any heritage with Visual SourceSafe. TFVC was written from the ground up to solve limitations of using VSS on large development projects. ...
VSS converter for TFS beta 3
Akash Maheshwari, PM for the source control converters for TFS, has posted a set of articles on using the VSS converter with TFS beta 3. You'll want to check that out if you are converting from VSS, because that's the most up-to-date source of information.
Why are there two Source Control entries on the File menu?
If you add the Code Analysis check-in policy to your Team Project, you'll see two entries for Source Control on the File menu in VS, as shown below. All of the standard menu items for TFS source control are under the second Source Control entry. The issue is cosmetic and is related to a change we made in the TFS source control provider used in VS. This should be fixed by the time version 1 is released.On a related note, Eric Lee has a post regarding an issue with solutions that were bound to source control in TFS beta 2. If you have a solution was originally bound to source control in beta ...
The 10,000th Changeset
Back on July 13, I wrote about the dates of changeset "milestones" in our dogfood system. Today we hit changeset 10,000. The time between 9000 and 10000 was longer than usual because of check-in restrictions in place leading up to beta 3 (bug fixes had to be individually reviewed and approved in ask mode).Here's the full list. The rate of changesets being created should increase as we continue to add more teams to the system. Changeset 10000 was checked in on September 26Changeset 9000 was checked in on September 2Changeset 8000 was checked in on August 16Changeset 7000 was checked in on Ju...
Active Directory is no longer required with Team Foundation Beta 3
There have been a lot of requests from folks wanting to use TFS without Active Directory. Since several questions and answers in comments on Jeff Beehler's blog dealt with this, I thought it's worth mentioning in a post that TFS beta 3 supports workgroup installations, and Active Directory is not required in that configuration.[Update 09/22/05] Doug's comment below addresses another long-standing issue: "Additionally, beta 3 now supports Windows 2000 Active Directories as well as the previously supported Windows Server 2003 version."
Team Foundation Beta 3 has been released!
Today we signed off on Team Foundation Beta 3! If you used beta 2, beta 3 is a vast improvement. Beta 3 should hopefully show up on MSDN in about two days. You may remember that beta 3 has the go-live license and will be supported for migration to the final release version 1, which means this is the last time you have to start from scratch.With beta 3, single-server installation is once again supported! I know many people didn't install the July CTP because of the lack of a single-server installation. With each public release, installation has gotten easier and more reliable, and thi...
Working remotely with TFS Version Control
Here in North Carolina, we have a 10Mb connection to the outside world (it was a 3Mb connection until a few months ago), so we know what it's like to use TFS remotely. In addition to minimizing the number of requests from the client to the server, TFS Version Control contains several features that aid in working in a situation where the connection to the server is much slower than the local network: compressed files, compressed SOAP responses, and a caching proxy server. Every file that we upload as part of checking in or shelving is compressed using GZip. If a file is larger after being compress...
Outlook macro to create work item and changeset hyperlinks
[NOTE: If this post looks truncated, scroll down or make the browser window wider. The style sheet causes this.] Ed Hintz, a dev lead on the TFS Version Control team, sends a lot of email with TFS work item numbers. Work items can be viewed (not edited) in a web browser using an URL constructed from the server name and the work item number. Our dogfood system is a single server, so the server is always the same. So, Ed wrote a macro for Outlook that will convert the current selection to a hyperlink to the work item. Here's the code for the macro, which he bound to Alt+L.&n...
Continuous Integration Demo Code from Doug Neumann’s TLN301 PDC Talk
Doug Neumann's TLN301 presentation, VSTS: Behind the Scenes of Visual Studio 2005 Team Foundation Server (slides), featured a demonstration of how to use the server's check-in event notification to kick off a build for a continuous integration build system using Team Build. A number of people asked for it, so we've decided to post it here. Doug's demonstration used the July CTP, but since beta 3 will hopefully be released this week, the code has been modified to run on beta 3. You'll need to create a web service and put the following code into it. Here are the assemblies you'll need to ref...
Doug Neumann on Channel 9
Doug Neumann, one of our esteemed Program Managers, is in a short video on Channel 9 talking about our office, version control, the proxy, etc. He and Mario, our other version control PM, are at PDC this week.Doug Neumann - Source Code control guy on VSTS team
How wide is a string when displayed in the console window?
Not too long ago, I had to fix the command line output for tf.exe, the Team Foundation Version Control command line app, so that output would be formatted properly for console windows (cmd.exe) using double-byte code pages.The code originally computed the output display width as the length of the string. However, that's not correct when the code is running on a Japanese Windows system, for example. Whereas English letters all take up one position in the console window, double-byte characters are twice as wide and take two positions. The original code produced really bad looking output....
How TFS Version Control determines a file’s encoding
TFS Version Control will automatically detect a file's encoding based upon the following. The only exception to the foregoing is PDF files. Those are always detected as binary because they are so common and can be all text in the first 1 kilobyte with binary streams later in the file. The detection is based on the signature, "%PDF-", that always appears at the start of a PDF file.So, if you take a file that is in the euc-jp encoding and add it to source control on a US English Windows system, it will be added as Windows-1252 unless you specify a different encoding with the /type parameter on t...
Team Foundation Version Control client API example
[Update 3/16/2006] I have decided to remove this version to reduce confusion. Please see http://blogs.msdn.com/buckh/archive/2006/03/15/552288.aspx for the RTM v1 example.
Hold the shift key and double click
I've learned two shortcuts recently that I didn't know existed in TFS source control integration in VS. These may or may not work based on the build you are using. Double clicking the Source Control node in the Team Explorer will bring up the Source Control Explorer window. What I learned recently is that holding the shift key and double clicking Source Control will bring up the Pending Changes window. The other shortcut is more useful. You may already know that double clicking a file in the checkin window will bring it up in the editor. If you hold the shift key while double c...
Look for TFS Beta 3 in September, RTM in Q1 ’06
Beta 3 for Team Foundation will be released in September along with Visual Studio 2005 Release Candidate 1. One of the most significant points with beta 3 is that it will have a go-live license that includes data migration to RTM. The details are in Soma's blog post for today: Visual Studio 2005 update.Here's a copy of the part that's TFS-specific. Simultaneously with Visual Studio 2005 RC1 [in September], we will also release Beta 3 of Visual Studio 2005 Team Foundation Server (TFS). TFS is Microsoft’s server-based product for team collaboration and is part of the Visual Studio 2005 wave of pro...
Why doesn’t Team Foundation get the latest version of a file on checkout?
I've seen this question come up a few times. Doug Neumann, our PM, wrote a nice explanation in the Team Foundation forum (http://forums.microsoft.com/msdn/ShowPost.aspx?PostID=70231). It turns out that this is by design, so let me explain the reasoning behind it. When you perform a get operation to populate your workspace with a set of files, you are setting yourself up with a consistent snapshot from source control. Typically, the configuration of source on your system represents a point in time snapshot of files from the repository that are known to work together, and therefore is buildable an...
Dogfood statistics update
John Lawrence posted the latest set of dogfood system statistics. The deltas are from May I think, since it says checkins are up 4,500. The June/early-July statistics are here. One thing to note is that we now have more than 600,000 files and folders in the system. Hopefully, we'll hit 1 million in the not too distant future.Note that you can get some of these same statistics for your own system, such as number of files and workspaces, using the QueryServerRequests web service call that I wrote about here. Jeff Lucovsky recently wrote a post on command logging and tbl_Command. ...
Upgraded
The dogfood system is now based on the July CTP (it's nearly the same). Surprisingly, we had to fix the NIC setting on the production dogfood server. This time we knew where to look when we saw terrible data transfer rates from the server. Rather than being explicitly set to half duplex, it was set to auto. However, it fell back to a half duplex setting automatically. Changing the setting fixed the problem.
July CTP for Team Foundation is headed your way
Rob Caron just posted that the July CTP is making its way through MSDN now. As Rob points out, be sure to check out the Known Issues and Readme pages.One of the things that held up the release was we spent Monday trying to figure out why the communication between the source control mid-tier and client was terrible. Downloads were taking forever, as were large web service responses. We thought it might be a bug in our code or a bug in the framework. At the end of a long day, it turned out that the duplex settings for the network cards in the test machines were wrong, causing dropp...
Dogfood statistics update
Here's an update on what's changed since June 1 (John's last update was for May).Users Work items Version control Past 7 days
Alert settings
Occasionally, the question about how to configure, after installation, the alert email SMTP server and from address setting have come up in the Team Foundation forum. Alerts are emails that are sent when a check-in occurs in the Team Project you specify, or a work item assigned to you changes. Users can sign up for alerts by going to the Team -> Alerts menu in VS 2005 after connecting to a Team Foundation Server or by right-clicking on a Team Project in Team Explorer and choosing Alerts.To set the SMTP server and the from address, edit file "%ProgramFiles%Microsoft Visual Studio 2005...
Changeset milestones in dogfood
John Lawrence has posted dogfood usage stats in the past. I took a look at the changeset "milestones" today. The rate of changesets being created has certainly increased as more users have been added to the system.To get the latest changeset, you can run h changeset /latest or h changeset /latest /i if you don't want the gui. For any given changeset, you can specify the number, such as h changeset 4000 /i. You could also use the history command, h history $/ /r /i, to see them all (use /stopafter to limit the number of changesets returned by history, such as /stopa...
Info on the upcoming July CTP
We're still ironing out a few more wrinkles in preparation for the dogfood upgrade, but I wanted to go let folks know that it's going to require two server machines to install. With beta 2 we had a setup that would allow you to install it all on a single machine, which was great for getting a system set up for evaluation. Unfortunately, I was told that the July CTP won't be able to do that. You'll need separate machines for the application tier and data tier. You can still install a client (VS 2005) on the application tier box. You could also run the application tier i...
TFS Source Control administration web service
Have you ever wondered how many files are in your server? Or workspaces? Have you wanted to stop a request that was being processed? Using the administration web service and matching web page for TFS Source Control, you can do exactly that.For a beta 2 server, bring up http://localhost:8080/scc/application/admin.asmx in Internet Explorer (either run IE on the application tier or replace localhost with the name of the server). For the upcoming mid-July CTP server, bring up http://localhost:8080/SourceControl/Application/Administration.asmx (yep, longer name and more capital l...
Please send error reports when prompted
A couple of months ago, Jeff Lucovsky wrote about filing watson reports for Team Foundation. When you log in as an administrator on the application tier for TFS, you may be greeted with a dialog asking if you would like to report errors to Microsoft. Likewise, if Visual Studio crashes, you may be asked to report the error to Microsoft. Please do this. Specific developers and testers for each of the components of TFS are responsible for making sure that the errors filed through the Microsoft error reporting service (aka Watson reports) are filed as bugs to be fixed. Each error re...
Jeff Beehler’s blogging
Tonight I stumbled across Jeff Beehler's new blog. So far he's written about our effort to upgrade our dogfood system to new code (we've been using a system based on the beta 2 release), which we'll release as a mid-July CTP.
Using baseless merge with converted VSS shared folders
In this forum thread, http://forums.microsoft.com/msdn/ShowPost.aspx?PostID=18817, a question was asked about using baseless merge with converted VSS shared folders.[UPDATE Aug. 22, 2006] The GUI will not show the relatives of baseless merges, only explicit branch relationships.[UPDATE Feb. 6, 2006] I'm happy to say that baseless merges DO record history in the RC and RTM releases of TFS. I wouldn't normally go back and edit a post that's this old, but since people will find it using search engines, I want it to reflect the final v1 behavior.[UPDATE June 27] Unfortunately, it doesn't work ...
Don’t use the June CTP of SQL 2005 with Team Foundation
It's a question that's come up a lot lately. The June CTP of SQL 2005 will not work as the SQL backend for the current public releases of Team Foundation. There have been changes in SQL 2005 that require changes in TFS for it to work.
Skip the June CTP for Team Foundation
The June CTP of VS 2005 includes Team Foundation Server. However, this is not the June CTP discussed in the Team Foundation MSDN forums and elsewhere. That CTP is now scheduled for July (it was the last week of June, so it didn't change much). So, anywhere you've see a reference to the June CTP for TFS in the forums, think July CTP.The July CTP of TFS will include quite a few performance improvements, protocol changes (which means the just-released June CTP won't communicate properly with the upcoming July CTP of TFS), and nearly all of the code names are gone from assemblies...
CVS compared with Team Foundation Version Control
In the Team Foundation forum a question was asked regarding CVS compared to Team Foundation Version Control. Here's what I wrote. Of course, Team Foundation is much more than version control since we have integrated work item tracking, reporting, etc.I'm biased, of course, and I'm probably leaving stuff out. I've used CVS in the past, but I wasn't exactly a power user. Okay, here goes.TFS has atomic checkins. When you check in, it all succeeds or fails. No changes are committed unless the whole thing succeeds. CVS does not have this.TFS has shelving, and CVS does not. She...
How to use the TF version control command line from VS 2003 and other environments
We've had a lot of customer feedback on wanting integration in VS 2003, VB6, etc. The problem with the VS 2003 environment is that there can only be a single version of the CLR loaded into a process. VS 2003 loads 1.1. The TF source control integration requires that the 2.0 CLR be used. Thus, our VS integration code won't run in VS 2003. With other environments that don't load a particular CLR, there is the possibility of writing a plugin to provide TF source control integration.You can also use Team Foundation Client (which is being renamed Team Explorer) as a stand alone interface ...
VSTS Pricing Announcement
Pricing is an important topic, and I've written several posts about it. Today Rick LaPlante announced changes to the pricing of VSTS in response to customer feedback.Here's one part from Rick's post that I think will really make some people happy. One area where we received a lot of feedback was from smaller organizations looking to use Visual Studio 2005 Team Foundation Server. The ability to amortize the cost of the server over a large number of devs makes the Server exceptionally cheap on a per seat basis when you are thinking 20, 50, 100, 500 people per server. However when you are...
Team Foundation Hardware Requirements
Many folks are interested in guidance on hardware. In the Team Foundation forum, Brian Harry, Product Unit Manager of Team Foundation, posted the latest preliminary hardware requirements.If you are going with a single processor box (or if you want to maximize performance), I would recommend changing the warehouse update interval to reduce the load on the server.
Eliminate ctl00oReportCell error and simplifying team project creation authorization
Mike Attili has a posted a couple of useful things for using the Team Foundation beta.If you are tired of getting the "Unable to locate control: ctl00oReportCell" message, check out his solution to elminating the problem in Eliminate ctl00oReportCell error in Team System Project Portal.He also provides a guide for setting up a group and assigning the permissions in TFS, Rosetta, and SharePoint to allow users in that group to successfully create Team Projects. See Simplify Authorization for Team Project Creation.
How to fix a problem with Windows backup and the Volume Shadow Service after installing Yukon April CTP
In the Team Foundation forum, a user posted the following problem with Windows backup after installing Team Foundation Server, including the April CTP of SQL 2005. Prior to installing Team Foundation Server and Client I was able to use the Windows backup utility to successfully create an ASR backup and full backup of the server. After installinf TFS I find the backup utility fails with the following error: Error returned while the creating volume shadow copy: 80042301 After looking further into this, it appears that the volume shadow copy service was not started, nor could it be manually started. All other ...
Microsoft to expand small Durham office
The News & Observer wrote an article about Brian, Craig, and our office.Microsoft to expand small Durham office DURHAM -- Brian Harry jokes that he called Microsoft the evil empire before it was popular to do so. "I only ever worked for start-ups, and in those days, I viewed it as a behemoth," said Harry, 38. Now he runs a development office in Durham for the world's largest software company. It is an office that has operated in relative obscurity since it began almost three years ago, and one that is now poised for big expansion.If you are curious about the office, here are the stats in brief. WHERE: Durh...
Add an RSS feed to Team Foundation Source Control
Jeff Lucovsky posted a nice two-part series on setting up an RSS feed for your Team Foundation source control server. Check it out. Team Foundation RSS Feed Generator for Source Control Part 2: What's my source control server doing? A RSS feed to keep track of checkins
VSTS 2005 FAQ blog posts fixes for known issues
The Visual Studio 2005 Team System blog functions as sort of a FAQ in blog form. They've started posting known issues and workarounds for the new beta release. The first two posts are about the problems antivirus software can cause during setup and what to do about AD/AM setup failures due to spaces in paths.
Data tier load with Team Foundation beta
Did you install your beta data tier in Virtual PC or Virtual Server and see a high CPU load while its running? Even on real hardware, you may notice some load when nothing would appear to be going on. Someone mentioned on an internal mailing list that the data tier CPU load for a combined app and data tier installed in Virtual Server was quite high, averaging about 50-70% with most of that time being used by SQL analysis services (msmdsrv.exe).Well, here's the answer (I didn't write the question or the answer, but I hope people find it useful). The warehouse was designed to run processi...
Visual Studio Team Foundation Forum on MSDN
Speaking of the forum, be sure to check out the Visual Studio Team Foundation forum. Folks like Mike have posted useful information, and lots of MS folks are answering questions. You may even get an answer from Rick LaPlante.The MSDN forums are nice, and they've obviously put quite a bit of work into them. The forums are supposed to eventually replace the newsgroup, but I'm having a hard time finding what I haven't read once a thread changes. Clicking through pages on the web site is too time consuming. I was hoping that SharpReader was the answer since the forum has an RSS feed...
SQL Server Reporting Services Permissions and Visual Studio Team Foundation Beta 2
Mike Attili has a nice post on fixing reporting service permissions, Problems with SQL Server Reporting Services Permissions. Bruce Taimana answered his post in the forum stating that was the correct way to handle it in the beta.
VSTS pricing announced
VSTS pricing is always a popular topic (see posts in January and June). Finally the speculation is over, and the pricing was announced publicly today.Microsoft Details Pricing and Licensing for Visual Studio 2005 and Simplifies Microsoft Developer Network Subscriptionshttp://www.microsoft.com/presspass/press/2005/mar05/03-21VS2005PR.aspFrequently Asked Questions http://msdn.microsoft.com/howtobuy/vs2005/faq/default.aspx[Update 3/24] Rick LaPlante, general manager of VSTS, posted a great pricing grid here. He also talks about the server pricing.