# Thursday, July 01, 2010

Usually before checking in to TFS Version Control, I will navigate to the pending changes window and compare/diff with the latest version to see what changes I have made.  It’s a good habit to go through just to make sure you aren’t checking anything in that you don’t intend to be committed.

I’ve just been doing it the long way every time by choosing the option from the context menu.

Compare with Latest Version in TFS Pending Changes Window

A client asked if there was a quicker way and I ended up finding out that there are two undocumented features to diff the files in the pending changes window:

  • Shift + Double-Click on the Item
  • Shift + Enter on the Item

Updated – (7/1/2010 11:45 AM)

You can use a registry key to even swap the view/diff behavior in the Pending Changes tool window.  Setting this registry key will make double-click/enter run compare, and shift+double-click/enter view the file.

  • Path:     HKCU\Software\Microsoft\VisualStudio\<ver>\TeamFoundation\SourceControl\Behavior
    • <ver> = 10.0 for Visual Studio 2010 & Team Foundation Server 2010
    • <ver> = 9.0 for Visual Studio 2008 & Team Foundation Server 2008
    • <ver> = 8.0 for Visual Studio 2005 & Team Foundation Server 2005
  • Value:   DoubleClickOnChange (DWORD)
    • 0 for view as the primary command (default)
    • 1 for compare as primary command

How about that?

 

Ed Blankenship

posted on Thursday, July 01, 2010 9:25:49 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Tuesday, May 11, 2010

During the first week of April, a little package was sitting on my front porch with the first book to be released on the Visual Studio 2010 release that deals with the new Application Lifecycle Management (ALM) features.  For those of you who don’t know, this essentially means the former “Team System” line of products as we were exposed to it in the 2005 and 2008 releases.  Although the entire Visual Studio suite of products is considered something that helps you with ALM, the book primarily focused on Visual Studio 2010 Ultimate, Visual Studio 2010 Premium, Visual Studio 2010 Test Professional, Visual Studio 2010 Lab Management, and Team Foundation Server 2010.  During the Introduction, I even appreciated how the authors discussed about “where Team System went.”  It’s the best explanation of the branding change that I’ve seen to date.

I was extremely excited to start immediately reading the book.  Even though I have been closely involved with the 2010 release as a Microsoft MVP, when I started to read this book my goal was to be exposed deeper in the feature set being introduced in the 2010 release.

At the time of writing this blog post, the book was selling for $34.64 at Amazon.  The suggested retail price is $54.99.  It is currently #7 in the Software Development books category!

Strengths

If you are new to the ALM features in Visual Studio, I felt this book really offered you the ability to get the high-level overview of all of those features.  It’s essentially similar to a “survey” course that you would have taken in college.   It’s 696 pages that ends up going through all of the Visual Studio client and server features at just the right level of detail. There were even some areas that I felt that I learned more about and hadn’t been exposed to heavily in the past.

The architecture features were something that I had hoped to learn the most from.  They have just never been something that I dived into great detail during the 2010 release cycle.   All of the new UML diagrams that are available including the new architecture features like Use Case, Activity, Sequence, Component, Class, Dependency, and Layer Diagrams.  There was a also a great introduction to the Architecture Explorer.

The testing features have really been what has made up a majority of the Visual Studio 2010 release and the book definitely reflects that.  Going through the testing features, I really felt like I understood the end to end story.  It felt very rounded out!  These chapters are where I picked up a majority of the nuggets of information.  I can’t tell you how many times I said “wow, I didn’t know you could do that.”  I also feel like this is a great place to pick up some introductory knowledge about how Visual Studio Team Lab Management fits into the ALM story.  I also kept thinking how great this book would be for the testers on your team that are new to the Microsoft testing platform and Team Foundation Server.

There are so many changes to TFS, I can’t even begin to start describing them.  Thankfully, the book did a great job.  Especially with the revamp of Team Build to use Windows Workflow Foundation.  You can even download the Team Build chapter from the book for free here:  Team Foundation Build.  Other than automated builds, you’ll get a good pass by all of the rest of the new TFS 2010 features and architecture/topology changes.

There was a whole chapter dedicated to debugging with IntelliTrace!  That’s awesome.  I’m very much a fan of IntelliTrace and think that will truly change the way you develop.

Criticisms

I have been hoping to have a book available out there that really only discusses TFS.  The book definitely has a few chapters available on TFS and spends a good amount of time but that discussion is not the nitty gritty that I think some readers out there are really looking for.  With that said, I don’t think this book was positioned for the “TFS Administrator” exclusively.  Again, I really think this is a survey-level review of the entire ALM stack of features for Visual Studio.  That doesn’t allow you to go into the depths of any particular product.  There currently isn’t a book available for TFS 2010 with the level of detail that I am sure some readers out there are hoping for.  We’ll see what happens in the months to come…

My next criticism isn’t so much for the content of the book as what is media choices are available.  I own a Kindle DX and I imagine a few other techies in the world have some type of eBook reader as well.  I was hoping to have a CD that contained a DRM-free PDF that I could copy over to my Kindle DX whenever I’m traveling and need a quick resource for reference.  Wrox certainly does allow you to get a PDF of books but you have to order them separately even if you had purchased the hard copy.

Finally, the only other thing that I noticed was in that chapter about IntelliTrace (see above) there wasn’t a mention of Symbol & Source Server.  I couldn’t believe it.  There is definitely a discussion later in the book about Team Build’s integration with Symbol & Source server but I was hoping to have seen some more detail in the IntelliTrace chapter about the importance of having them setup for your organization.  You’ll want to put two and two together.

 

Now that I’m finished scrounging from the bottom of the barrel to find some criticisms… :)

My Recommendation

Hands down, get this book.  I think it’s well worth it.   I know each of the authors and it really looks like they put a tremendous amount of effort into writing the book.  The topics are really presented well and at the right level of detail for someone really wanting a crash course in all of the Visual Studio ALM features.  I can’t even tell you how many new nuggets of information that I ran across of things that I didn’t even realize were in the product.

It certainly gets my stamp of approval! :)  Kudos to the authors.

 

Very respectfully,

Ed Blankenship

Microsoft MVP of the Year, Visual Studio ALM and Team Foundation Server

posted on Tuesday, May 11, 2010 10:24:05 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Wednesday, March 17, 2010

I’m up early working on a problem that’s been nagging me and just had to stop for a second to show how friggin’ awesome the new Branching & Track Changes visualization tools in TFS 2010 are.  This is on a demo TFS 2010 environment but I wanted to use the APIs to find out information about what changesets were included in a merged changeset.  I needed to find a good candidate that allowed me to follow some changes throughout the branches.  I quickly found changeset 103 in my MAIN branch which included several (but not too many) individual changesets that were included with it.  I went ahead and tracked that changeset and got the following diagram below.

TFS 2010 Branch Visualization Track Changes Hierarchy View

However, I noticed that I ended up having some kind of partial merge as indicated in the Feature A branch with changeset 78 (as indicated by the yellow shading on the track changes visualization.)  That got me curious… What happened there?  It was pretty easy to figure out because all I had to do is change to the “Timeline View” instead of the “Hierarchy View” that I was currently in and I ended up receiving the visualization below which shed some light on things.

TFS 2010 Branch Visualization Track Changes Timeline View

The reason the Feature A branch was indicated as a partial merge was because not all of the changes that are included in changeset 103 (which is the changeset we’re pivoting off of for visualizations) has been merged into that branch.  It only contains changesets 76 & 77 but not 101 & 102.  Pretty handy!

 

Ed Blankenship

posted on Wednesday, March 17, 2010 4:03:41 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [2] Trackback
# Tuesday, February 02, 2010

One of the new features for TFS 2010 Version Control is the ability to rollback or undo a changeset or check-in inside the product and see it as a new pending change type (and new change type in the history) inside Team Explorer.  This feature has been available in TFS 2008 but you had to use the TFS Power Tools.  The only gotcha for the TFS 2010 implementation is that you have to use the command-line application tf.exe to actually perform the rollback information.  More information about the tool is available here in the MSDN Library:  http://msdn.microsoft.com/en-us/library/dd380776(VS.100).aspx

The syntax is:

tf rollback /changeset:changesetfrom~changesetto [itemspec] [/recursive]
            [/lock:none|checkin|checkout] [/version:versionspec]
            [/keepmergehistory] [/noprompt] [/login:username,[password]]

tf rollback /toversion:versionspec itemspec [/recursive]
            [/lock:none|checkin|checkout] [/version:versionspec]
            [/keepmergehistory] [/noprompt] [/login:username,[password]]

Versionspec:
    Date/Time         D"any .Net Framework-supported format"
                      or any of the date formats of the local machine
    Changeset number  Cnnnnnn
    Label             Llabelname
    Latest version    T
    Workspace         Wworkspacename;workspaceowner

image

image

Ed Blankenship

posted on Tuesday, February 02, 2010 12:51:57 PM (Eastern Standard Time, UTC-05:00)  #    Comments [1] Trackback
# Wednesday, January 20, 2010

Thanks to the Visual Studio ALM Rangers, we have a new release of the TFS Branching Guidance!  Think of it like TFS Branching Guidance 3.0… it was developed specifically for TFS 2010 including tidbits on best practices using all of the new branching & merging hierarchy and visualizing change features.

I often talk about branching & merging strategies with my clients and it’s always great to have some diagrams and content to go back to and leave with them so that they can delve into Configuration Management a little more.

TFS 2010 Branch Hierarchy Visualization TFS 2010 Tracking Changes Merge Visualization

Head on over to their CodePlex site:  http://tfsbranchingguideiii.codeplex.com/

Project Description
The purpose of this project is to build some insightful and practical guidance around branching and merging with Visual Studio Team Foundation Server 2010. The new release focuses on Hands on Labs and includes lots of lessons learnt from the community Q&A.
Visual Studio Team Foundation Server Branching Guide 2010
Branching and merging of software is a very large topic. It is an area where there is a lot of maturity in the software industry. This Ranger solution focuses on applied and practical examples of branching that you can use right now. The 2010 release includes discussions around branching concepts and strategies but also focuses on practical hands-on labs.
Visual Studio ALM Rangers
This guidance is created by the Rangers who have the mission to provide out of band solutions for missing features or guidance. This content was created with support from Microsoft Product Group, Microsoft Most Valued Professionals (MVPs) and technical specialists from technology communities around the globe, giving you a real-world view from the field, where the technology has been tested and used.
What is in the package?
The content is packaged in 8 separate zip files to give you the choice of selective downloads but the default download is the TFS_Branching_Guide_2010_Complete_Package_v1 if you are interested in all parts.

  • TFS_Branching_Guide_Main_2010_v1.zip --> Start here
  • TFS_Branching_Guide_Scenarios_2010_v1.zip
  • TFS_Branching_Guide_Scenarios_2010_Poster_v1.zip
  • HOL_Quick_Start_Basic_Branch_Plan_2010_v1.zip
  • Lab_Files_HOL_Quick_Start_Basic_Branch_Plan_v1.zip
  • TFS_Branching_Guide_Q&A_2010_v1.zip
  • TFS_Branching_Guide_Diagrams_2010_v1.zip
  • TFS_Branching_Guide_2010_Complete_Package_v1
Team
Bill Heys, James Pickell, Willy-Peter Schaub, Bijan Javidi, Oliver Hilgers, Bob Jacobs, Sin Min Lee, Neno Loje, Mathias Olausson, Matt Velloso
How to submit new ideas?
The recommended method is to simply post ideas to the community or to contact the Rangers at http://msdn.microsoft.com/en-us/teamsystem/ee358786.aspx.

Ed Blankenship

posted on Wednesday, January 20, 2010 5:22:56 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Wednesday, July 15, 2009

Just wanted to take a few seconds to post the slide deck I’m using for my Real World TFS sessions.  I’ll post a link to the recording of the MVP TV session earlier today when it’s made available!

 

Ed Blankenship

posted on Wednesday, July 15, 2009 2:56:36 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Monday, July 13, 2009

Also really excited about doing my first ever MVP TV set up by the Microsoft MVP program.  Hope to see you there!  We have an extra thirty minutes at the end so be sure to bring your questions.

MVP TV: Real World TFS: Tips for a Successful Team System Implementation

Wednesday, July 15th, 2009 | 9:00am – 10:30am (PDT, Redmond time) or 12:00pm – 1:30pm (EDT, New York City time)

Targeted: This Product Group Interaction is open to  all Developer MVPs in all Technical Expertise and  public audience.

So you’ve decided that Visual Studio Team System & Team Foundation Server is going to bring your organization added value (because it will :)) but what do you do now?  Please join Ed Blankenship as he covers the 2.5 years of successful implementation of VSTS and the experience of that journey at Infragistics, the world’s leading maker of software development tools.  The session intends to cover each phase of the implementation of all affected areas for a smooth adoption:  Version Control, Builds, Work Item Tracking, global deployment, moving multiple teams, training, automated testing, migration from legacy systems, and integration with other systems and TFS.  The goal will be to go through at a high-level of what it takes to make you successful by learning from the challenges and obstacles overcome.  We’ll also look in the future with VSTS 2010 and see how strategic planning will help make a successful adoption of the new features in the upcoming 2010 release.  The session is led by a Microsoft MVP (Team System) & Champ who has been in the trenches during the whole implementation.

Prerequisites:  A healthy attitude in learning from other peoples challenges and a strong desire to make real change within your organization!

About Ed Blankenship: Ed is a Microsoft MVP, Microsoft Certified Application Developer, and works as the Release Engineering Manager at Infragistics, makers of the world's leading presentation layer tools and components. His expertise consists of Microsoft Visual Studio Team System and Team Foundation Server. He is also a technical evangelist for Rich Client applications (primarily Windows Forms & Windows Presentation Foundation.) He has been a technical editor for several Silverlight books, an article author, and has spoken at various user groups, events, and conferences.

PJ Forgione has invited you to attend an online meeting using Live Meeting.
Join the meeting. (Link: https://www.livemeeting.com/cc/mvp/join?id=NP5FQZ&role=attend&pw=A49410Y0D )
Audio Information
Computer Audio
To use computer audio, you need speakers and microphone, or a headset.
Telephone conferencing
Use the information below to connect:
Toll-free: +1 (866) 500-6738
Toll: +1 (203) 480-8000
Participant code: 5460396

 

Ed Blankenship

posted on Monday, July 13, 2009 12:30:09 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback

While I’m up in New Jersey working at the Infragistics headquarters office, I’m going to have the privilege of speaking at the New York City VSTS User Group on July 28, 2009 at 6:30 PM.  Come see me if you’re in the area!  Because of security concerns at the building, you do need to register ahead of time if you’re planning to attend.

VSTS User Group

Real World TFS: Tips for a Successful Team System Implementation

Description:
So you've decided that Visual Studio Team System & Team Foundation Server is going to bring your organization added value (because it will :)) but what do you do now? Please join Ed Blankenship as he covers the 2.5 years of successful implementation of VSTS and the experience of that journey at Infragistics, the world's leading maker of software development tools. The session intends to cover each phase of the implementation of all affected areas for a smooth adoption: Version Control, Builds, Work Item Tracking, global deployment, moving multiple teams, training, automated testing, migration from legacy systems, and integration with other systems and TFS. The goal will be to go through at a high-level of what it takes to make you successful by learning from the challenges and obstacles overcome. We'll also look in the future with VSTS 2010 and see how strategic planning will help make a successful adoption of the new features in the upcoming 2010 release. The session is led by a Microsoft MVP (Team System) & Champ who has been in the trenches during the whole implementation.

Presenter: Ed Blankenship

Bio:
Ed is a Microsoft MVP, Microsoft Certified Application Developer, and works as the Release Engineering Manager at Infragistics, makers of the world's leading presentation layer tools and components. His expertise includes Microsoft Visual Studio Team System and Team Foundation Server. He is also a technical evangelist for Rich Client applications (primarily Windows Forms & Windows Presentation Foundation.) He has been a technical editor for several Silverlight books, an article author, and has spoken at various user groups, events, radio shows, and conferences.

Date/Time:  07-28-2009 6:30 - 8:00 PM

Location: Microsoft Offices in NYC at 1290 Avenue of Americas, 6th Floor

Click here to Register

 

Ed Blankenship

posted on Monday, July 13, 2009 9:53:00 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Wednesday, July 01, 2009

I’m up really early this morning.  I’m about to head to the airport to spend my Independence Day weekend in the Carolinas for some much needed beach vacation and visit with friends.  Thankfully, I didn’t miss Martin Woodward letting me know that the latest Radio TFS episode was made available just a few moments ago that includes my interview about our use of TFS and Visual Studio Team System at Infragistics.  It’s a longer episode than normal so it’s perfect if you’re going to be spending some time at the beach like me and listen to a fun talk.  We both really enjoyed chatting for this episode so we hope you enjoy it as well!

Using TFS with Ed Blankenship

In this episode we sit down and chat with Ed Blankenship about the use of Team Foundation Server at Infragistics. Ed has had some interesting challenges and experiences in running their TFS instance.  Additionally they have done some fairly advanced integration work which we discuss in detail.  This is a double-length show, so hopefully plenty of stuff to enjoy if you are sunning yourself on a beach somewhere.

Ed is the Release Engineering Manager at Infragistics, makers of the world's leading presentation layer tools and components.  He is also a Microsoft MVP in Visual Studio Team System.

     Play Now: Using TFS with Ed Blankenship

As the Release Engineering Manager, he leads the Release Engineering Department which is responsible for automated builds, creating product installers, packaging source code for customers, source configuration management/version control, metrics, release management, work item tracking, licensing enforcement, and development of internal productivity tools.  The department also is responsible for TFS Operations & Maintenance.

Ed has been a technical editor for the Wrox Silverlight 1.0, Silverlight 2 Developer's Guide, and Silverlight 2 Bible books, author of numerous articles, and has spoken at various user groups, events, and conferences.

Links from the show:

As usual send any feedback to radiotfs@gmail.com.

 

Feel free to let me know if you have any questions based on the Radio TFS chat.  I’m more than happy to get them answered for you!

 

Take care,

Ed B.

posted on Wednesday, July 01, 2009 5:56:42 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Thursday, October 26, 2006

Update:  If you are wanting to learn how to undo or rollback a changeset using TFS 2010, visit my new blog post about this topic here:  http://www.edsquared.com/2010/02/02/Rollback+Or+Undo+A+Changeset+In+TFS+2010+Version+Control.aspx

 

So...  I really needed to undo a changeset that was previously made by another user and started looking around for it.  I knew you could do it but just hadn't ever had a need for it.  I figure I start right-clicking different places in Source Control Explorer but that didn't lead me to anything :(

Until I remembered there were cool new features in the Team Foundation Server Power Toys.  Once of which was an undo changeset command.  Take a look at them because I know you will find several features handy.  One of my favorites in there as well is Annotate.  (Thanks to Dave McKinstry for previewing that one to us!)  It's basically a solution to point-the-finger game for changes...  It will show a bar on the side next to every line that shows who the last person was that edited it, date/time, and the changeset number.  You can even double-click on the changeset number and the actual details of the changeset will pop-up.  Very handy!

 

Other features in the power toys package: (taken from the documentation)

 

Unshelve Command

Use the unshelve command to unshelve and merge the changes in the workspace.

Rollback Command

Use the rollback command to roll back changes that have already been committed to Team Foundation Server.

Online Command

Use the online command to create pending edits on writable files that do not have pending edits.

GetCS Command

Use the GetCS (Get Changeset) command to get the changes in a particular changeset.

UU Command

Use the UU (Undo Unchanged) command to undo unchanged files, including adds, edits, and deletes.

Annotate Command

Use the annotate command to download all versions of the specified files and show information about when and who changed each line in the file.

Review Command

Use the review command to optimize the code review process to avoid checking in or shelving.

History Command

Use the history command to display the revision history for one or more files and folders. The /followbranches option returns the history of the file branch’s ancestors.

Workitem Command

Use the workitem command to create, update, or view work items.

Query Command

Use the query command to run a work item query and display the results. If you do not provide a specific query, all the active work items assigned to you are displayed.

TreeDiff Command

Use the treediff command to display a visual representation of the differences between files in two server folders, in a server folder and a local folder, or in two local folders.

 

Ed B.

posted on Thursday, October 26, 2006 9:51:03 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback