I juggle around with a lot of workspaces. The reason is .NET Compact Framework is consumed in a whole bunch of things like Windows Mobile, Xbox, Zune, Nokia and most of them are on different source branches. On top of this active feature work happens in feature branches and there are other service branches to frequently peek into.
So the net effect is I need to sometime go to different folders and see what it’s source control workspace mapping is or I need to dump details of workspaces on other computers and see if I can use that workspace as a template to create a new workspace.
The thing I hate here is to run cd to that folder and do a tf workspace to bring up the GUI and then dismiss the UI. I don’t like GUI when things can be done equally well on the console. So I quickly hacked up a tool that dumps workspace details onto the console, something as below
d:\>workspace.exe NETCF\F01 Name: ABHINAB2_S60 Server: TfsServer01 Owner: Abhinaba Computer: ABHINAB2 Comment: Working folders: Active $/NetCF/F01/tools d:\NETCF\F01\tools Active $/NetCF/F01/source d:\NETCF\F01\source
This tool can be used either to see the mapping of a folder or given a workspace name and owner dump it details. It uses the exact same format as show in the tf workspace UI.
The source and a build binary is linked below. It is a single source file (Program.cs) and you should be able to pull it into any version of Visual Studio and even build it from the command line using CSC
Using the tool
Build it or use the pre-built binary and edit the .config file to point it to your TFS server and you are all set to go.