Thursday, January 11, 2007

Working Offline with TFS

John Robbins has written a post called Working Offline with TFS. In it, he describes his approach to using Visual Studio when not connected to the Team Foundation Server. As many of you know, the server information is stored in the .sln file, and VS tries to connect to the server whenever you open a solution that contains the server information in its source control bindings. To make things go more quickly, he wrote a couple of custom MSBuild tasks to automate the process of adding and removing the bindings the solution files. While you don't have to remove the bindings while you're offline, it certainly makes opening the solution quicker when you know you can't get to the server.
For synchronizing with the server when he's connected again, he wrote an MSBuild task that wraps tfpt to use the online command. The online command will find and pend edits for any files in version control that are writable and don't already have a pending edit. Optionally, it will find additions and deletions (and there more options still -- run tfpt online /help for more information).
He pointed out a bug in tfpt.exe where you can't get the online command's dialog when standard out is redirected, which was also a bug in tf.exe. I fixed the bug in tfpt.exe to add the /prompt switch. Tf.exe also has the same issue, but we had already fixed the Orcas tf.exe a while back. So, the problem with not getting the online command's dialog as he describes will be fixed when the updated tfpt.exe is released, so long as you add /prompt (I don't know when, but it's not too far off in the future).

No comments: