New CodeLens Indicator–Incoming Changes

New CodeLens Indicator–Incoming Changes

  • Comments 25


CodeLens has been a blockbuster feature in Visual Studio 2013. Consistently it is listed among the best loved features for the release. We continue to work on it and in Visual Studio 2013 Update 2 CTP2 , we are releasing a new indicator called Incoming Changes.


To recap, CodeLens is a heads-up display in your Visual Studio Editor where you can find information about your code in-context. Here is a quick screenshot to jog your memory.



There is an excellent MSDN article introducing CodeLens and I recommend you read it if you have not looked at CodeLens earlier - Find code info directly in the editor using CodeLens.



In order to try out this feature you need

1.       Visual Studio 2013 Update 2 CTP2 client IDE

2.       Team Foundation Server 2013 Update 2 RC (also available in the same download link above).


Incoming Changes Overview

If your team uses multiple branches in Team Foundation Server Version control, you need to know changes occurring in various branches on the code element you are working on. The new CodeLens Indicator - Incoming Changes provides this information. Previously, you had to run multiple version control commands to get this information. Now you get it in one click.


For demonstrating this feature, I am using the FabrikamFiber sample application. I have created the following set of branches.



Now I make a change and check it into the FabrikamFiber-Dev-UI branch. When I look at the code element in FabrikamFiber.CallCenter branch, I see the following CodeLens Incoming Changes Indicator.



You can bring up the Detail window by clicking on the indicator or pressing Alt+6 inside the method or class.


Source Branch for Incoming Change

The icon next to the branch name gives you information on the relationship of the source branch with the current branch.



Other types of icons that can appear are




Change is coming from a parent branch


Change is coming from a peer branch


Change is coming as a Reverse Integration from child branch to its parent


Change is coming as a Forward integration from a branch to its child


Change is coming from a branch further away than a parent, child or peer relationship


Change is coming as a baseless merge from an unrelated branch



Follow-up Actions

For each incoming change listed in the detail window, you can perform additional operations.


·         You can compare the incoming change with the local version to identify exactly what has changed.





·         You can view more details of the Incoming Change



·         You can track how the changeset is progressing in the branch hierarchy.





Here you can see that the Incoming Change (with changeset #13) is present only in the FabrikamFiber-Dev-UI branch and has not been merged into any other branch now.


·         You can ignore a particular branch if you are not interested in activity from that branch.



·         You can also hide intermediate branch merges. This is especially useful when there are lot of activities happening in the branches and you want to get a more concise view. NOTE that we have turned it on by default. If you want to see all changes, you can uncheck this option.


Here is a stage in the development process with lots of changes and merge activity among the branches.



If you uncheck “Hide Intermediate Branch Merges”, you will get a more detailed view.



·         Connect to the Author via IM, Video, Email, Lync Call or Voice Call.



Please note that many of these actions (e.g:- Changeset Details & Track Changeset) are already possible from Team Explorer; CodeLens provides a much more convenient entry point into them directly from code.

Turn it off

If for any reason, you don’t want to see this indicator, you can turn it off in Tools->Options.

Right click on the CodeLens Indicator line and the following menu will appear.


If you choose “CodeLens Options”, the Tools->Options dialog for CodeLens is shown. You can disable “Show Incoming Changes” to hide this indicator.



As always, we are interested in hearing your feedback on this feature. Try it out and let us know.

Leave a Comment
  • Please add 3 and 1 and type the answer here:
  • Post
  • It is still available only to Ultimate SKU, right? Or with Update2 it will become available to all Visual Studio SKU (Premium, Professional)?



  • @Slavo Furman

    CodeLens is available only in Ultimate.

  • @Mathew That makes it available to just the MVPs, right... ?  Ultimate is for architects and very proficient devs considering the price tag... But it's the broader dev audience that needs it... Same goes for code review feature !

  • Will this feature only be for TFS Server or will it also be available for the On-Site version of TFS?

  • This code review feature would be great for my team. I mean really really great. Let be also make it clear that i really appreciate the VS team implementing features like this that help with the human side of things.

    I just wish i could use them.

    I know you guys are running a business too at MS but i felt kind of betrayed by the unexpectedly short release cycle between VS2012 and VS2013. I pushed hard for VS2012 touting it's new features and benefits only to have the rug pulled out from under me when 2013 appeared less than a year later. You guys haven't even mentioned VS2012 in passing since new of 2013 became public. Even if i could justify throwing 2012 out the window after just a year, how am i supposed to approach management about VS2013 when the core features are locked away in ultimate with a solid gold padlock? Assuming we had the money lying around, we could either upgrade to Ultimate, or hire new QAs for more testing. Which option going to raise the quality of our software more? Heck, we could fly our devs out to more conferences and bootcamps for training or take a two week cruise to the Bahamas on that budget.

    I'm sorry for being so negative, but me and my team feel left out in the cold and our only crime was assuming that MS would hold to the previous 2-3 year release cycle for VS as before. I know "you" personally can't do much about it, but keep us simple folk in mind the next time you bump into whoever decides these things in the hallway.


  • @Isabel

    Currently, this feature is available only for on-premise version of Team Foundation Server. Enabling it on Visual Studio Online is at the top of our backlog.

  • Does this Feature require TFS 2013 Update 2 RC, or is TFS 2013 enough?

    Or is there any other requirement?

    I just installed Update 2 CTP2, and checked this with a file where I know there are changes in at least one of the branches. (I just checked there are multiple changes)

    But the Indicator 'Incoming Changes' is missing

  • @Alex

    You need both Visual Studio 2013 Update 2 CTP2 and Team Foundation Server 2013 Update 2 RC

  • Make it available in Professional edition, not only in the Ultimate

  • Will it be Avila le in tfs git projects?

  • If you can't make this available in Premium or Pro, can you make an ala carte system, where we can buy these valuable tools in the affordable versions of Visual Studio.

    Honestly, I have been trying to rationalize purchasing an TFS server to replace our SVN server, but with all the features we want behind a steep paywall, It is a difficult case to make.

    I can understand putting the management features in Ultimate, but CodeLens is a developer tool, and should be in the hands of the developers.

  • I would really love to get this feature also in my Visual Studio Premium edition. Unfortunately, I cannot afford the ultimate edition! Thanks.

  • It would be really awesome to have this functionality available on Git repositories, not just TFS. That would give it a much larger reach.

  • Looks Nice.  I hope this will come for GIT based repositories too

  • Totally useless if it's only in Ultimate.

Page 1 of 2 (25 items) 12