Another solution to "Get Latest on Checkout"

As most SourceSafe users have probably discovered by now, TFS does not get the latest version of a file on checkout.  I've seen the online debates continue long after we shipped, but as far as I'm concerned Doug Neumann (by way of Buck) and Ed Hintz wrote the definitive explanations last year.

Meanwhile, we did get the message that some people really like the old behavior.  Since people migrating from VSS are also likely to be using legacy environments like Visual Studio 2003, the first place we added this feature was in the MSSCCI provider.  More recently, a Get Latest on Checkout "feature crew" became the first TFS team successfully navigate the new process.  And the TFS community has continued to refine Ed's macro

Today, I noticed something new: a VS2005 add-in on CodePlex.  It's very rough at the moment, but hey, it's open source -- if it's important to you, contribute!

I'll close with a warning.  Invariably, when people opine for a GLoC feature, they want to avoid having to merge their changes during checkin.  Unfortunately, GLoC does not prevent merging!  If someone checks in between the times you GLoC and checkin, you're no better off than you were with ordinary checkout.  You need another tool: exclusive locks, aka "check-in locks" in TFS. 

We already let you control exclusive locks at the Team Project level (also via file types and manually).  So when we added GLoC to Orcas, we made its UI an obvious complement to the exclusive checkout toggle.  Add-ins and macros don't have that luxury.  Furthermore, if you want to be absolutely sure to avoid concurrent edits, your GLoC feature must obtain the lock before running Get.  Add-ins that piggyback on the DocumentOpening event can't guarantee that; standalone commands like Ed's original macro can, but comes with a perf cost (detecting whether locking is appropriate requires at least 1 server roundtrip).

People accustomed to VSS are probably not that picky ;-)  Hopefully one of these solutions will serve as "good enough" until we release our first CTP.