Mike Parks
Code.Where(c => c.IsTechnicalDebt).Refactor();

TFS 2010 Auto Shelve Extension

We've been working with the Visual Studio 2010 SDK and the TFS 2010 SDK a lot recently to create new Visual Studio Extensions. You can find these extensions in the Visual Studio Gallery. If you're a developer/programmer, you should check it out, they have some pretty cool tools out there. I'd be surprised if you told me you went there and couldn't find any tools that could help you.

One of the new extensions Cory and I made is called TFS Auto Shelve. Check out the description and read about it below. If you're interested and you have VS 2010 w/TFS 2010, feel free to try it out and let us know what you think.

You can download it here: http://visualstudiogallery.msdn.microsoft.com/en-us/080540cb-e35f-4651-b71c-86c73e4a633d


Here's a description and screenshots:

Protect your code by guaranteeing your pending changes are always backed up to the TFS server.

 What it does:

  • Automatic Shelving shelves all your pending changes while you are coding
  • Manual Shelving shelves all your pending changes anytime with a single menu click or Ctrl+T hotkey
  • Uses one shelveset per workspace to shelve all pending changes to the TFS Server
  • Shelvesets are re-used to save the latest version of pending changes


  • Automatic Shelving
    • Begins when any solution mapped to TFS is opened in Visual Studio
    • Disabled when non-mapped TFS solution is opened
    • Team Menu allows you to turn on/off automatic shelving
      • Team Menu -> TFS Auto Shelve (Running)
      • Team Menu -> TFS Auto Shelve (Not Running)
  • Manual Shelving
    • Can be triggered any time as long as you are connected to TFS
      • Team Menu -> TFS Auto Shelve Now
  • Options
    • Tools Menu -> Options -> TFS Auto Shelve Options
      • BaseName – This name is automatically followed by the workspace name to create a unique shelveset name. By default it’s “TFS Auto Shelve”.
      • TimerSaveInterval – The interval (in minutes) which automatic shelving will occur

 Helpful Info:

  • To view shelvesets, open Source Control Explorer, click on:
    • File > Source Control > Unshelve Pending Changes
  • Workspaces can be modified by:
    • Opening the Source Control Explorer > Clicking on Workspaces drop down > Click Workspaces… > Click Add/Edit/Removed
  • Custom Visual Studio Activity Logging is implemented. If you run into any errors, please startup Visual Studio with the /log switch, re-create the error, then close Visual Studio. You can browse to “%AppData%\Microsoft\VisualStudio\10.0\ActivityLog.XML” to view the log. Please feel free to inform us of any errors you see and we can work it out via email.



- Mike

Visual Studio 2010 - Faster Startup with /nosplash

I read a blog the other day about the /nosplash switch in Visual Studio. Apparently, it's been around a while and I'm a little late on finding out about it. I figured I'd share it for those of you that come across this and didn't know about it as well. Basically all it does is turn off the Visual Studio splash screen which speeds up initial startup time. It's not a big difference but every little bit helps. I choose speed over looks. You can set the switch by right clicking on Visual Studio, selecting Properties, and adding "/nosplash" on the target Property, so it will look like this: "C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe" /nosplash.

Feel free to try it out and see if you like it. You can always change it back by just removing the /nosplash switch when you're done testing. There are plenty more Visual Studio switches out there but this is the main one that came in handy for me.


- Mike