Shelve Sets

I think Shelve Sets are one of the nicest features of TFS source control.

They are great for:

  • Storing code safely on the server each night before you go home
  • Storing code you are working on to fix a bug in another branch or older code base
  • Sharing a code example
  • Code Reviews
  • Prototyping
  • Passing something incomplete off before a vacation or long weekend

That reminds me of the one thing I don’t like about Shelve Sets. When you want to unshelve something that belongs to another developer you have to know their user id. There is no  drop down with a distinct list of users that have something shelved. To get my code you would have to know dlloyd or lloyddave or lloydd or whatever my network id happenes to be.

All is not lost, if you install the TFS Power Tools  one of the tools it comes with is called Team Members which is an add-in to Team Explorer, that allows you to organize users into sub-teams and access a number of collaborative tools, such as IM and email, sharing of queries and links, and downloading and installation of custom Team Foundation components.

Check out the context menu when you right click on a team member in this tool you can show their check in history, pending changes, and of course shelvesets.