TFS – How to unshelve someone else’s changes

azure-devopstfsvisual-studio-2015

I just started a new company, working on an ASP.NET solution with multiple projects. Another previous developer has made multiple changes and put them into one shelveset. These changes are also out in production environment. So when I do a "get latest", I'm not getting what's out in production.

How can I take the shelveset by someone else and check it in so that it's on the main trunk of TFS and everyone will know have access to this code. Basically, how do I unshelve someone else's shelveset and check it in? Seems simple enough, but my Visual Studio is only showing me options to "Get Specific Version…", "Undo Pending Changes…", "Shelve Pending Changes…", and "View History…". "Get Specific Version…" only allows me to get changesets, nothing for someone else's shelveset. HELP!!! 🙂 We are using Visual Studio Online too if that helps. That's where I'm going to see the shelveset.

Best Answer

To unshelve the shelveset from someone else you go to Team Explorer -> Pending Changes. You then select the Action link next to Shelve and select Find Shelvesets.

By default, you'll now see the shelvesets that are found for your user account. You change the name to that of the developer who created the shelveset and then you can see his shelveset and unshelve it. You do have to make sure that you have no pending changes because you can't merge when unshelving.