I'm currently trying to migrate and upgrade a TFS2010 instance running on a server (SERVER_A) in a workgroup to TFS2013 on another server (SERVER_B) that's on a domain. Everything seems to work ok, but when I open Visual Studio and try to connect to the new TFS instance and retrieve my workspace it's not there. I've read quite a bit of documentation on "tf workspaces" and "tfsconfig identities" but I'm still pretty confused and haven't been able to work out what's going on. What I've done...
TfsConfig RemapDBs /DatabaseName:SERVER_B\NAMEDINSTANCE;Tfs_Configuration /SQLInstances:SERVER_B\NAMEDINSTANCE
At this point, if I call tf workspaces
on SERVER_B I see all the workspaces:
\Microsoft Team Foundation Server 12.0\Tools>tf workspaces /owner:* /collection:"http://SERVER_B:8080/tfs/COLLECTIONNAME/"
Collection: http://SERVER_B:8080/tfs/SFO
Workspace Owner Computer
---------- ------------- ----------
...
DEV-PC1 Administrator DEV-PC1
DEV-PC2 Administrator DEV-PC2
JOHND123 John Doe JOHND123
...
If I make that same call from SERVER_A, this is what I see:
\Microsoft Team Foundation Server 2010\Tools>tf workspaces /owner:* /collection:"http://SERVER_A:8080/tfs/COLLECTIONNAME/"
Collection: http://SERVER_A:8080/tfs/COLLECTIONNAME
Workspace Owner Computer
---------- ---------------------- ----------
...
DEV-PC1 SERVER_A\Administrator DEV-PC1
DEV-PC2 SERVER_A\Administrator DEV-PC2
JOHND123 SERVER_A\John JOHND123
...
So, SERVER_A has local users as workspace owners, and something in the migration maps those local users to some other users, what I can only assume are a domain users. In this example (which is just obfuscated from exactly what I'm seeing) the local administrator is being mapped to "Administrator". I assumed this means the domain Administrator. If I open Visual Studio on my dev machine, enter the credentials for the domain Administrator account (different password than SERVER_A\Administrator) in Team Explorer I can connect to the new TFS2013 instance. When I go to the list of workspaces though, it displays the workspace name for my computer (DEV-PC1), there are no solutions, and if I click "Manage Workspaces..." the list is empty.
It appears as though this all boils down to an issue with the account mapping, but it's not clear to me from what I've read how to handle this. If it would be useful, I can post example output from the TFSConfig identities
command from both machines as well. I have a hunch that part of the problem is that the owner for most of the workspaces is Administrator (all of this was setup before I got here), and in the TFS2013 instance there are identities for domain\Administrator, SERVER_B\Administrator, and SERVER_A\Administrator. Maybe Visual Studio is confused? Or maybe TFS is confused when it does the upgrade?
Any and all help would be greatly appreciated. I hesitate to admit that I did this migration the first time successfully as a test run, figured out all the configuration for my workspace, and then uninstalled everything on SERVER_B to start over (and so I could take screenshots for documentation of the entire process). The second time I attempted it, it didn't work. I really don't think I forgot to write down any of the steps I did the first time, but it's possible I'm missing something.
You'll want to follow the instructions in Move Team Foundation Server from one environment to another to do the move. The identities in the domain are different than the identities in the workgroup (the underlying unique identifiers are different). All of the workspaces, shelvesets, etc. are there but associated with identities that need to be updated.