Force uninstall Visual Studio 2017 Release candidates

If you, like me, are stuck trying to upgrade Visual Studio 2017, then you may only get unblocked by removing everything and starting afresh. Since Visual Studio 2017 is still in Release Candidate and not final, this is something we may have to deal with from time to time.

But when the "uninstall" button in the ui fails, you may end up stuck. In that case, you'll be happy to find:

C:\Program Files (x86)\Microsoft Visual Studio\Installer\resources\app\layout\installcleanup.exe

Which will perform the same actions as the good old "vssetup.exe /uninstall /force". If that doesn't get you unstuck, there is an even more forceful way:

Delete everything under:

  • C:\ProgramData\Microsoft\VisualStudio\15.0
  • C:\ProgramData\Microsoft\VisualStudio\Packages
  • %appdata%\Microsoft\VisualStudio\15.0*
  • %appdata%\Microsoft\VisualStudio\Packages
  • C:\Program Files (x86)\Microsoft Visual Studio\2017
  • HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\15.0*
  • HKEY_LOCAL_MACHINESOFTWARE\Microsoft\VisualStudio\15.0*

Add :8080 to your TFS 2017 bindings after upgrading to SSL

Because TFS 2017 allows authentication with Personal Access Tokens (PAT) it's recommended to upgrade to SSL if you were still on port 80. The installer will even help with the configuration and can add a redirect from port :80 to :443.

It doesn't add a a redirect from port :8080 though, so your users may have to update all their bookmarks. Or you can add that second binding in IIS yourself:

And that will help your users find the new location more easily.

Connecting to TFS from any version of Visual Studio

I've written a couple of blog posts on this subject before and thought it would  be nice to consolidate them into one big post now that Visual Studio 2013 is about to be released. There are 3 major things to consider when connecting to TFS from an older version of Visual Studio.

  • The version of TFS you want to connect to
  • The version of Visual Studio you're connecting from
  • The version of Windows you're running
In this blog post:
  1. Connecting to Team Foundation Server 2015, 2017 or Visual Studio Team Services.
  2. Connecting to Team Foundation Server 2013.
  3. Connecting to Team Foundation Server 2012.
  4. Connecting to Team Foundation Server 2010.
  5. Configuring the MSSCCI provider for Visual Studio
  6. Connecting from Visual Studio 2005, 2008 or the MSSCCI provider
Since writing this post, Microsoft has produced an updated piece of documentation (which is already behind in some aspects) that describes most of the client/server combinations. One thing it adds which I haven't described, is the list of features that are available depending on your version of Visual Studio/TFS.

If you're having issues connecting after updating, it might be required to clear your local client cache to clear up certain issues like this one. Either the official way or the hard way.

If you also want to install the Team Foundation Server Power tools to match your Visual Studio/TFS version, check out this separate post.

Update: Updated download links to the final version of Team Explorer 2013.

Update (13-11-2013): Updated download links to the final version of Visual Studio 2012 Update 4.
Update (25-11-2013): Added information on client cache and feature docs.
Update (6-1-2014): Added update for VS2010 for Windows 8 and Visual Studio 2012
Update (21-1-2014): Added update 1 for Visual Studio 2013
Update (25-8-2014): Added update 3 for Visual Studio 2013
Update (21-7-2015): Added update 5 for Visual Studio 2013 and Visual Studio and TFS 2015. Since Visual Studio 2013 Update 5 contains updates to handle TFS 2015 Team Project Renames, it's recommended for anyone connecting Visual Studio or MSSCCI 2013 to TFS 2015.
Update (22-7-2015): Added update 5RC for Visual studio 2012.Since Visual Studio 2012 Update 5RC contains updates to handle TFS 2015 Team Project Renames, it's recommended for anyone connecting Visual Studio or MSSCCI 2012 to TFS 2015.
Update (26-8-2015): Replaced Visual Studio 2012 Update 5 RC with the final version.
Update (30-8-2015): MSSCCI 2013 now also supports Visual Studio Team Foundation Server 2015. But it still depends on Team Explorer 2013.
Update (27-10-2015): IntelliJ IDE's support added
Update (8-1-2016): logging on using Azure Active Directory is no longer supported on Windows XP/2013 and systems with IE8 or older.
Update (4-7-2016):Added Visual Studio 2015 update 3
Update (16-11-2016): Added TFS 2015 (same as TFS2015)

Connecting to Team Foundation Server 2015, 2017 or Visual Studio Team Services


Visual Basic 6, Visual Studio .NET and Visual Studio 2003 on Windows XP

  1. Install Visual Basic 6, Visual Studio .NET or Visual Studio 2003
  2. Team Explorer 2010
  3. Visual Studio 2010 SP1
  4. Visual Studio 2010  GDR
  5. Visual Studio 2010 Compatibility Update for Windows 8 and Visual Studio 2012
  6. Microsoft MSSCCI Provider for Visual Studio 2010
  • Make sure you select the MSSCCI source control provider under tools, options, Source Control
  • Do not use the Team Explorer tab or the Team sub menu to connect to TFS, instead use File, Source Control.
  • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
  • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Team Services (formerly known as Team Foundation Service)
  • Connecting to VS Team Services is no longer supported using Azure Active Directory accounts when connecting using a machine which is running Windows XP, 2013 or Windows Vista, 7, 2008 or 2008r2 when running Internet Explorer 8.
  • Connecting to VS Team Services is no longer supported when using Internet Explorer 9 and 10.

Visual Studio 2005 or Business Intelligence Development Studio 2008 on Windows XP

Install or repair the following items on your system in the specified order
  1. Install Visual Studio 2005
  2. Visual Studio 2005 SP1
  3. Visual Studio Team System 2005 Service Pack 1 Forward Compatibility Update for Team Foundation Server 2010
  4. Optional BIDS 2008
  5. Team Explorer 2010
  6. Visual Studio 2010 SP1
  7. Visual Studio 2010  GDR
  8. Visual Studio 2010 Compatibility Update for Windows 8 and Visual Studio 2012
  9. Microsoft MSSCCI Provider for Visual Studio 2010
  • Make sure you select the MSSCCI source control provider under tools, options, Source Control
  • Do not use the Team Explorer tab or the Team sub menu to connect to TFS, instead use File, Source Control.
  • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
  • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Team Services (formerly known as Team Foundation Service)
  • Connecting to VS Team Services is no longer supported using Azure Active Directory accounts when connecting using a machine which is running Windows XP, 2013 or Windows Vista, 7, 2008 or 2008r2 when running Internet Explorer 8.
  • Connecting to VS Team Services is no longer supported when using Internet Explorer 9 and 10.

Visual Studio 2005 or Business Intelligence Development Studio 2008 on Windows Vista

Install or repair the following items on your system in the specified order
    1. Visual Studio 2005
    2. Visual Studio 2005 SP1
    3. Visual Studio Team System 2005 Service Pack 1 Forward Compatibility Update for Team Foundation Server 2010
    4. (Optional) BIDS 2008
    5. Visual Studio 2005 Update for Vista
    6. Team Explorer 2012
    7. Visual Studio 2012 update 5
    8. Microsoft MSSCCI Provider for Visual Studio 2012
    • Make sure you select the MSSCCI source control provider under tools, options, Source Control
    • Do not use the Team Explorer tab or the Team sub menu to connect to TFS, instead use File, Source Control.
    • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
    • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Team Services (formerly known as Team Foundation Service)
    • Connecting to VS Team Services is no longer supported using Azure Active Directory accounts when connecting using a machine which is running Windows XP, 2013 or Windows Vista, 7, 2008 or 2008r2 when running Internet Explorer 8.
    • Connecting to VS Team Services is no longer supported when using Internet Explorer 9 and 10.

    Visual Studio 2005 or Business Intelligence Development Studio 2008 on Windows 7, 8, 8.1 or 10

    Install or repair the following items on your system in the specified order
    1. Visual Studio 2005
    2. Visual Studio 2005 SP1
    3. Visual Studio Team System 2005 Service Pack 1 Forward Compatibility Update for Team Foundation Server 2010
    4. (Optional) BIDS 2008
    5. Visual Studio 2005 Update for Vista
    6. Team explorer 2013
      1. Team Explorer 2013 
      2. Visual Studio 2013 update 5
    7. (Optionally) Visual Studio 2015
    8. Microsoft MSSCCI Provider for Visual Studio Team Foundation Server 2013 and 2015 
    • Make sure you select the MSSCCI source control provider under tools, options, Source Control
    • Do not use the Team Explorer tab or the Team sub menu to connect to TFS, instead use File, Source Control.
    • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
    • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Team Services (formerly known as Team Foundation Service)
    • Connecting to VS Team Services is no longer supported using Azure Active Directory accounts when connecting using a machine which is running Windows XP, 2013 or Windows Vista, 7, 2008 or 2008r2 when running Internet Explorer 8.
    • Connecting to VS Team Services is no longer supported when using Internet Explorer 9 and 10.

    Visual Studio 2008  or Business Intelligence Development Studio 2008r2 on Windows XP, Vista, 7, 8, 8.1 or 10

    Install or repair the following items on your system in the specified order
    This setup is not officially supported, but it is supposed to work just fine. The MSSCCI provider route is the officially supported story, see right below. You may receive an occasional error message here and there.
    1. Visual Studio 2008
    2. Team Explorer 2008
    3. Visual Studio 2008 SP1
    4. (optional) BIDS 2008r2
    5. Visual Studio 2008 GDR for Team Foundation Service
    • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
    • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Team Services (formerly known as Team Foundation Service)
    • Connecting to VS Team Services is no longer supported using Azure Active Directory accounts when connecting using a machine which is running Windows XP, 2013 or Windows Vista, 7, 2008 or 2008r2 when running Internet Explorer 8.

    Visual Studio 2008  or Business Intelligence Development Studio 2008r2 on Windows XP and Vista (Alternative)

    Install or repair the following items on your system in the specified order
    1. Visual Studio 2008
    2. Visual Studio 2008 SP1
    3. (optional) BIDS 2008r2
    4. Team Explorer 2010
    5. Visual Studio 2010 SP1
    6. Visual Studio 2010  GDR
    7. Visual Studio 2010 Compatibility Update for Windows 8 and Visual Studio 2012
    8. Microsoft MSSCCI Provider for Visual Studio 2010
    • Do not use the Team Explorer tab or the Team sub menu to connect to TFS, instead use File, Source Control.
    • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
    • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Team Services (formerly known as Team Foundation Service)
    • Connecting to VS Team Services is no longer supported using Azure Active Directory accounts when connecting using a machine which is running Windows XP, 2013 or Windows Vista, 7, 2008 or 2008r2 when running Internet Explorer 8.
    • Connecting to VS Team Services is no longer supported when using Internet Explorer 9 and 10.

    Visual Studio 2008  or Business Intelligence Development Studio 2008r2 on Windows 7, 8, 8.1 or 10 (Alternative)

    Install or repair the following items on your system in the specified order.
    Since there is no stand-alone installation of Team Explorer 2015, I've opted for the 2013 version instead.
    1. Visual Studio 2008
    2. Visual Studio 2008 SP1
    3. (optional) BIDS 2008r2
    4. Visual Studio 2008 GDR for Team Foundation Service
    5. Team explorer 2013
      1. Team Explorer 2013 
      2. Visual Studio 2013 update 5
    6. (Optionally) Visual Studio 2015
    7. Microsoft MSSCCI Provider for Visual Studio Team Foundation Server 2013 and 2015
    • Do not use the Team Explorer tab or the Team sub menu to connect to TFS, instead use File, Source Control.
    • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
    • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Team Services (formerly known as Team Foundation Service)
    • Connecting to VS Team Services is no longer supported using Azure Active Directory accounts when connecting using a machine which is running Windows XP, 2013 or Windows Vista, 7, 2008 or 2008r2 when running Internet Explorer 8.
    • Connecting to VS Team Services is no longer supported when using Internet Explorer 9 and 10.

    Visual Studio 2010 on Windows XP, Vista, 7, 8, 8.1 or 10

    1. Visual Studio 2010
    2. Team Explorer 2010
    3. Visual Studio 2010 SP1
    4. Visual Studio 2010 GDR for Team Foundation Service
    5. Visual Studio 2010 Compatibility Update for Windows 8 and Visual Studio 2012
    • Connect using the http://server:port/tfs/ url format for on premise servers.
    • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Team Services (formerly known as Team Foundation Service)
    • Connecting to VS Team Services is no longer supported using Azure Active Directory accounts when connecting using a machine which is running Windows XP, 2013 or Windows Vista, 7, 2008 or 2008r2 when running Internet Explorer 8.
    • Connecting to VS Team Services is no longer supported when using Internet Explorer 9 and 10.

    Visual Studio 2012 on Window 7, 8, 8.1 or 10

    1. Visual Studio 2012
    2. Team Explorer 2012
    3. Visual Studio 2012 update 5
    4. (optional) Visual Studio Tools for Git
    • Connect using the http://server:port/tfs/ url format for on premise servers.
    • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Team Services (formerly known as Team Foundation Service)
    • Connecting to VS Team Services is no longer supported using Azure Active Directory accounts when connecting using a machine which is running Internet Explorer 8.
    • Connecting to VS Team Services is no longer supported when using Internet Explorer 9 and 10.

    Visual Studio 2013 on Windows 7, 8, 8.1 or 10

    1. Visual Studio 2013
    2. Team Explorer 2013
    3. Visual Studio 2013 update 5
    • Connect using the http://server:port/tfs/ url format for on premise servers.
    • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Team Services (formerly known as Team Foundation Service)
    • Connecting to VS Team Services is no longer supported using Azure Active Directory accounts when connecting using a machine which is running Internet Explorer 8.
    • Connecting to VS Team Services is no longer supported when using Internet Explorer 9 and 10.

    Visual Studio 2015 on Windows 7, 8, 8.1 or 10

    1. Visual Studio 2015
    2. Visual Studio 2015 Update 3
    Note: Team Explorer for Visual Studio 2015 is not available as a stand-alone download. Users who just want to use the Team Explorer features, install:
      1. Team Explorer 2013
      2. Visual Studio 2013 update 5
      • Connect using the http://server:port/tfs/ url format for on premise servers.
      • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Team Services (formerly known as Team Foundation Service)
      • Connecting to VS Team Services is no longer supported using Azure Active Directory accounts when connecting using a machine which is running Internet Explorer 8.
      • Connecting to VS Team Services is no longer supported when using Internet Explorer 9 and 10.

      Eclipse on Windows XP, Vista, 7, 8, 8.1 or 10

      1. Eclipse
      2. Team Explorer Everywhere for Team Foundation Server
      • Connect using the http://server:port/tfs/ url format for on premise servers.
      • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Team Services (formerly known as Team Foundation Service)

      IntelliJ on Windows XP, Vista, 7, 8, 8.1 or 10

      1. IntelliJ IDEA, RubyMine, WebStorm, PhpStorm, PyCharm, AppCode, MPS, Android Studio, 0xDBE or CLion
      2. Visual Studio IntelliJ Plugin
      • Connect using the http://server:port/tfs/ url format for on premise servers.
      • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Team Services (formerly known as Team Foundation Service)

      Connecting to Team Foundation Server 2013.


      Visual Basic 6, Visual Studio .NET and Visual Studio 2003 on Windows XP

      1. Install Visual Basic 6, Visual Studio .NET or Visual Studio 2003
      2. Team Explorer 2010
      3. Visual Studio 2010 SP1
      4. Visual Studio 2010  GDR
      5. Visual Studio 2010 Compatibility Update for Windows 8 and Visual Studio 2012
      6. Microsoft MSSCCI Provider for Visual Studio 2010

      Visual Studio 2005 or Business Intelligence Development Studio 2008 on Windows XP

      Install or repair the following items on your system in the specified order
      1. Install Visual Studio 2005
      2. Visual Studio 2005 SP1
      3. Visual Studio Team System 2005 Service Pack 1 Forward Compatibility Update for Team Foundation Server 2010
      4. Optional BIDS 2008
      5. Team Explorer 2010
      6. Visual Studio 2010 SP1
      7. Visual Studio 2010  GDR
      8. Visual Studio 2010 Compatibility Update for Windows 8 and Visual Studio 2012
      9. Microsoft MSSCCI Provider for Visual Studio 2010

      Visual Studio 2005 or Business Intelligence Development Studio 2008 on Windows Vista

      Install or repair the following items on your system in the specified order
        1. Visual Studio 2005
        2. Visual Studio 2005 SP1
        3. Visual Studio Team System 2005 Service Pack 1 Forward Compatibility Update for Team Foundation Server 2010
        4. (Optional) BIDS 2008
        5. Visual Studio 2005 Update for Vista
        6. Team Explorer 2012
        7. Visual Studio 2012 update 5
        8. Microsoft MSSCCI Provider for Visual Studio 2012

        Visual Studio 2005 or Business Intelligence Development Studio 2008 on Windows 7, 8, 8.1 or 10

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2005
        2. Visual Studio 2005 SP1
        3. Visual Studio Team System 2005 Service Pack 1 Forward Compatibility Update for Team Foundation Server 2010
        4. (Optional) BIDS 2008
        5. Visual Studio 2005 Update for Vista
        6. Team explorer 2013
          1. Team Explorer 2013 
          2. Visual Studio 2013 update 5
        7. (Optionally) Visual Studio 2015
        8. Microsoft MSSCCI Provider for Visual Studio Team Foundation Server 2013 and 2015

        Visual Studio 2008  or Business Intelligence Development Studio 2008r2 on Windows XP, Vista, 7, 8, 8.1 or 10

        Install or repair the following items on your system in the specified order
        If I understand correctly, this setup is not officially supported, but it is supposed to work just fine. The MSSCCI provider route is the officially supported story, see right below.
        1. Visual Studio 2008
        2. Team Explorer 2008
        3. Visual Studio 2008 SP1
        4. (optional) BIDS 2008r2
        5. Visual Studio 2008 GDR for Team Foundation Service
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2008  or Business Intelligence Development Studio 2008r2 on Windows XP and Vista (Alternative)

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2008
        2. Visual Studio 2008 SP1
        3. (optional) BIDS 2008r2
        4. Team Explorer 2010
        5. Visual Studio 2010 SP1
        6. Visual Studio 2010  GDR
        7. Visual Studio 2010 Compatibility Update for Windows 8 and Visual Studio 2012
        8. Microsoft MSSCCI Provider for Visual Studio 2010
        • Do not use the Team Explorer tab or the Team sub menu to connect to TFS, instead use File, Source Control.
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2008  or Business Intelligence Development Studio 2008r2 on Windows 7, 8, 8.1 or 10 (Alternative)

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2008
        2. Visual Studio 2008 SP1
        3. (optional) BIDS 2008r2
        4. Visual Studio 2008 GDR for Team Foundation Service
        5. Team explorer 2013
          1. Team Explorer 2013 
          2. Visual Studio 2013 update 5
        6. (Optionally) Visual Studio 2015
        7. (Optionally) Visual Studio 2015 Update 3
        8. Microsoft MSSCCI Provider for Visual Studio Team Foundation Server 2013 and 2015
        • Do not use the Team Explorer tab or the Team sub menu to connect to TFS, instead use File, Source Control.
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2010 on Windows XP, Vista, 7, 8, 8.1 or 10

        1. Visual Studio 2010
        2. Team Explorer 2010
        3. Visual Studio 2010 SP1
        4. Visual Studio 2010 GDR for Team Foundation Service
        5. Visual Studio 2010 Compatibility Update for Windows 8 and Visual Studio 2012
        • Connect using the http://server:port/tfs/ url format for on premise servers.
        • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2012 on Window 7, 8, 8.1 or 10

        1. Visual Studio 2012
        2. Team Explorer 2012
        3. Visual Studio 2012 update 5
        4. (optional) Visual Studio Tools for Git
        • Connect using the http://server:port/tfs/ url format for on premise servers.
        • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2013 on Windows 7, 8, 8.1 or 10

        Note: Update to at least Visual Studio Update 2 to enable Tag editing inside Visual Studio and Microsoft Test Manager.
        1. Visual Studio 2013
        2. Team Explorer 2013
        3. Visual Studio 2013 update 5
        • Connect using the http://server:port/tfs/ url format for on premise servers.
        • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2015 on Windows 7, 8, 8.1 or 10

        1. Visual Studio 2015
        2. Visual Studio 2015 Update 3
        • Connect using the http://server:port/tfs/ url format for on premise servers.
        • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Online (formerly known as Team Foundation Service)

        Eclipse on Windows XP, Vista, 7, 8 or 8.1

        1. Eclipse
        2. Team Explorer Everywhere for Team Foundation Server
        • Connect using the http://server:port/tfs/ url format for on premise servers.
        • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Online (formerly known as Team Foundation Service)

        IntelliJ on Windows XP, Vista, 7, 8, 8.1 or 10

        1. IntelliJ IDEA, RubyMine, WebStorm, PhpStorm, PyCharm, AppCode, MPS, Android Studio, 0xDBE or CLion
        2. Visual Studio IntelliJ Plugin
        • Connect using the http://server:port/tfs/ url format for on premise servers.
        • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Online (formerly known as Team Foundation Service)

        Connecting to Team Foundation Server 2012


        Visual Basic 6, Visual Studio .NET or Visual Studio 2003 on Windows XP

        1. Install Visual Basic 6, Visual Studio .NET or Visual Studio 2003
        2. Team Explorer 2010
        3. Visual Studio 2010 SP1
        4. Visual Studio 2010  GDR
        5. Visual Studio 2010 Compatibility Update for Windows 8 and Visual Studio 2012
        6. Microsoft MSSCCI Provider for Visual Studio 2010

        Visual Studio 2005 or Business Intelligence Development Studio 2008 on Windows XP and Vista

        Install or repair the following items on your system in the specified order
        1. Install Visual Studio 2005
        2. Visual Studio 2005 SP1
        3. Visual Studio Team System 2005 Service Pack 1 Forward Compatibility Update for Team Foundation Server 2010
        4. (Optional) BIDS 2008
        5. Team Explorer 2010
        6. Visual Studio 2010 SP1
        7. Visual Studio 2010  GDR
        8. Visual Studio 2010 Compatibility Update for Windows 8 and Visual Studio 2012
        9. Microsoft MSSCCI Provider for Visual Studio 2010

        Visual Studio 2005 or Business Intelligence Development Studio 2008 on Windows 7, 8 , 8.1 or 10

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2005
        2. Visual Studio 2005 SP1
        3. Visual Studio Team System 2005 Service Pack 1 Forward Compatibility Update for Team Foundation Server 2010
        4. (Optional) BIDS 2008
        5. Visual Studio 2005 Update for Vista
        6. Team explorer 2013
          1. Team Explorer 2013 
          2. Visual Studio 2013 update 5
        7. (Optionally) Visual Studio 2015
        8. Microsoft MSSCCI Provider for Visual Studio Team Foundation Server 2013 and 2015

        Visual Studio 2008  or Business Intelligence Development Studio 2008r2 on Windows XP, Vista, 7, 8, 8.1 or 10

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2008
        2. Team Explorer 2008
        3. Visual Studio 2008 SP1
        4. (optional) BIDS 2008r2
        5. Visual Studio 2008 GDR for Team Foundation Service
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2010 on Windows XP, Vista, 7, 8, 8.1 or 10

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2010
        2. Team Explorer 2010
        3. Visual Studio 2010 SP1
        4. Visual Studio 2010 GDR for Team Foundation Service
        5. Visual Studio 2010 Compatibility Update for Windows 8 and Visual Studio 2012
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2012 on Window 7, 8, 8.1 or 10

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2012
        2. Team Explorer 2012
        3. (optional) Visual Studio 2012 update 5
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2013 on Windows 7, 8, 8.1 or 10

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2013
        2. Team Explorer 2013
        3. (optional) Visual Studio 2013 update 5
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2015 on Windows 7, 8, 8.1 or 10

        1. Visual Studio 2015
        2. Visual Studio 2015 Update 3
        • Connect using the http://server:port/tfs/ url format for on premise servers.
        • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Online (formerly known as Team Foundation Service)

        Eclipse on Windows XP, Vista, 7, 8, 8.1 or 10

        1. Eclipse
        2. Team Explorer Everywhere for Team Foundation Server
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        IntelliJ on Windows XP, Vista, 7, 8, 8.1 or 10

        1. IntelliJ IDEA, RubyMine, WebStorm, PhpStorm, PyCharm, AppCode, MPS, Android Studio, 0xDBE or CLion
        2. Visual Studio IntelliJ Plugin
        • Connect using the http://server:port/tfs/ url format for on premise servers.
        • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Online (formerly known as Team Foundation Service)

        Connecting to Team Foundation Server 2010


        Visual Basic 6, Visual Studio .NET or Visual Studio 2003 on Windows XP

        1. Install Visual Basic 6, Visual Studio .NET or Visual Studio 2003
        2. Team Explorer 2010
        3. Visual Studio 2010 SP1
        4. Visual Studio 2010  GDR
        5. Microsoft MSSCCI Provider for Visual Studio 2010

        Visual Studio 2005 or Business Intelligence Development Studio 2008 on Windows XP, Windows 7, 8, 8.1 or 10

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2005
        2. Team Explorer 2005
        3. Visual Studio 2005 SP1
        4. Optional BIDS 2008
        5. (not on XP) Visual Studio 2005 Update for Vista
        6. Visual Studio 2005 SP1 Forward Compatibility update for Team Foundation Server 2010
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2008  or Business Intelligence Development Studio 2008r2 on Windows XP, Vista, 7, 8, 8.1 or 10

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2008
        2. Team Explorer 2008
        3. Visual Studio 2008 SP1
        4. (optional) BIDS 2008r2
        5. Visual Studio 2008 GDR for Team Foundation Service
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2010 on Windows XP, Vista, 7, 8, 8.1 or 10

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2010
        2. Team Explorer 2010
        3. Visual Studio 2010 SP1
        4. Visual Studio 2010 GDR for Team Foundation Service
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2012 on Window 7, 8, 8.1 or 10

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2012
        2. Team Explorer 2012
        3. (Optional) Visual Studio 2012 update 5
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2013 on Windows 7, 8, 8.1 or 10

        Install or repair the following items on your system in the specified order
        1. Visual Studio 2013
        2. Team Explorer 2013
        3. (optional) Visual Studio 2013 update 5
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        Visual Studio 2015 on Windows 7, 8, 8.1 or 10

        1. Visual Studio 2015
        2. Visual Studio 2015 Update 3
        • Connect using the http://server:port/tfs/ url format for on premise servers.
        • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Online (formerly known as Team Foundation Service)

        Eclipse on Windows XP, Vista, 7, 8, 8.1 or 10

        1. Eclipse
        2. Team Explorer Everywhere for Team Foundation Server
        • Connect using the http://server:port/tfs/ProjectCollection url format for on premise servers
        • Connect using the https://yourprofile.visualstudio.com/DefaultCollection url format for Visual Studio Online (formerly known as Team Foundation Service)

        IntelliJ on Windows XP, Vista, 7, 8, 8.1 or 10

        1. IntelliJ IDEA, RubyMine, WebStorm, PhpStorm, PyCharm, AppCode, MPS, Android Studio, 0xDBE or CLion
        2. Visual Studio IntelliJ Plugin
        • Connect using the http://server:port/tfs/ url format for on premise servers.
        • Connect using the https://yourprofile.visualstudio.com/ url format for Visual Studio Online (formerly known as Team Foundation Service)

        Configuring the MSSCCI provider for Visual Studio


        To use the MSSCCI provider in Visual Studio you must make sure you have the correct Source Control provider selected. In your version of Visual Studio go to Tools, Options, Source Control and select the MSSCCI provider:
        Then go to File, Source Control to open a project from source control.

        You won't be able to trigger builds or access work items using the version of Visual Studio you are now using. Instead you must start Team Explorer 2010 or higher to interact with these features from Visual Studio.
        When you use Visual Studio 2012 or higher to configure your Version Control mappings, you need to make sure you select a "Server Workspace".

        Connecting from Visual Studio 2005, 2008 or the MSSCCI provider


        To connect to Visual Studio 2010 or higher from an older version of Visual Studio, you need to use a different URI format to add your server. Before Visual Studio 2010 was released, there was no such thing as a Project Collection.
        Instead of the now standard format:

        On-premise: http[s]://{yourserver}[:{port}]?/tfs/

        Team Foundation Service: https://{yourprofile}.visualstudio.com/ 

        You need to add the Project Collection to the URI, so that it becomes:

        On-premise: http[s]://{yourserver}[:{port}]/tfs/{ProjectCollection}

        Team Foundation Service: https://{yourprofile}.visualstudio.com/DefaultCollection

        Otherwise you will get the following error message:

        TF30335: The server name cannot contain the characters '/' or ':', or start with 'http://' or 'https://'

        Solve basic auth proxy issues with Nuget, Visual Studio and Xamarin (hack)

        When you're using Visual Studio behind a Basic Authenticaton proxy, you may run into issues restoring Nuget packages. While I've never found a real solution for the issue, and trust me I've tried quite a few workarounds like the ones listed here.

        You'll get the following error:

        [5:06] Download failed. Please download https://dl-ssl.google.com/android/repository/android_m2repository_r29.zip and put it to the C:UsersuserAppDataLocalXamarinXamarin.Android.Support.Design23.3.0.0 directory.
        [5:06] Reason: The remote server returned an error: (407) Proxy Authentication Required.

        I've come to rely on my trusted hacking friend Fiddler and turn on "Automatically Authenticate".

        Optionally configure your upstream proxy in Fiddler:

        Restart Visual Studio so it picks up Fiddler as the proxy and you're good to go. Just leave Fiddler running in the background and all will be well.

        A quick peek into Team Foundation Server 15 Preview

        Gian Maria Ricci already covered a nice overview of what's new in the install experience of TFS 15 in the latest Preview Release. Let's walk through the new features in the product... though I suspect that many of you won't see a lot of surprising things, given that many of the features have been released to Visual Studio Team Services in the past months.

        A quick scan through all the tabs and pages of Web Access reveals a cool number of new features, though maybe not yet as many as you had expected. Just remember that the time between releases has steadily gone down from 3 to 2 and now only 1 years. The differences are no longer earth shattering, but still very welcome!Read more →

        Publish your VSTS extension using Team Build and Release Management

        While I've released my VSTS Extension Tasks to GitHub and the Visual Studio Marketplace some time ago, I was reminded that I've never really blogged about it yet. You may wonder what it does.

        The VSTS Extension Tasks are a set of tasks for Team Build and Release Management to package, publish, share and install extensions to your Visual Studio Team Services account or TFS 2015 update 2 server.

        There are quite a few people using the extension to package and publish their Visual Studio Team Services and TFS extensions.

        There's a few places with more information on how to use them:

        I'm using these tasks to package and publish my other build tasks:
        A few other MVPs/Rangers that are using these tasks include Richard Fennel, Rene van Osnabrugge, Peter Groenewegen and Utkarsh Shigihalli and others.

        Publish your extension to a local TFS Update 2 server

        With the availability of extensions for TFS I've been looking for an easy way to publish extensions and their updates to the local marketplace. While I'm sure that Microsoft will at some point integrate the two, for now you need to manually sync the extensions between the VSTS Marketplace and your local TFS Marketplace.

        Turns out that the tools used to publish to the VSTS Marketplace work for the TFS one as well. to publish an extension you do need to pass in the service url manually and this took a little bit of fiddling to figure out what to put in there. Turns out that it takes the server root,

        C:t>tfx extension publish --root . --manifest-globs vss-extension.json 
        --service-url http://jessehouwing:8080/tfs --proxy http://blog.xebia.com:8888
        Checking if this extension is already published
        It isn't, create a new extension.
        Waiting for server to validate extension package...

        === Completed operation: publish extension ===
        - Packaging: C:tjessehouwing.jessehouwing-vsts-variable-tasks-0.0.0.vsix
        - Publishing: success
        - Sharing: not shared (use --share-with to share)


        If your server isn't configured with Basic Authentication enabled, you can use the Fiddler hack to authenticate over NTLM. As you can see by the --proxy option int he command above, that's what I'm doing at the moment.

        It should be relatively easy to build a PowerShell script that uses the --json option to list all extensions on the local TFS Marketplace and then check the online marketplace for a newer version to automatically sync extensions which have already been installed. Stick that in a Build Definition on a Schedule and your local marketplace will always be up to date with the latest versions. That's something for a future blogpost.

        Define a custom Authentication Scheme for your VSTS extension

        The standard Authentication Schemed in VSTS include Basic (username/password), Token, Service Credential (for Azure) and AzureCertificate Authentication. If you simply need a username password or a Personal Access token you can derive your own Credential Type from one of the exiting Authentication Schemes.

        You can see an example of this technique in my VSTS Extension tasks

        {
        "id": "marketplace-service-endpoint",
        "description": "Visual Studio Marketplace",
        "type": "ms.vss-endpoint.service-endpoint-type",
        "targets": [
        "ms.vss-endpoint.endpoint-types"
        ],
        "properties": {
        "name": "marketplace-auth-key",
        "displayName": "Visual Studio Marketplace",
        "url": "https://app.market.visualstudio.com/_apis/gallery",
        "authenticationSchemes": [
        {
        "type": "ms.vss-endpoint.endpoint-auth-scheme-token"
        },
        {
        "type": "ms.vss-endpoint.endpoint-auth-scheme-basic"
        }
        ]
        }
        }

        But what if you need to extend beyond the basics? There are ways to extend the UI with additional textboxes, as done in some of the other extensions you'll find out on GitHub.

        {
        "id": "saucelabs-endpoint-type",
        "description": "Sauce Labs Credentials",
        "type": "ms.vss-endpoint.service-endpoint-type",
        "targets": [ "ms.vss-endpoint.endpoint-types" ],
        "properties": {
        "name": "saucelabs",
        "displayName": "Sauce Labs Credentials",
        "url": "https://saucelabs.com/rest/v1/",
        "inputDescriptors": [],
        "authenticationSchemes": [
        {
        "type": "ms.vss-endpoint.endpoint-auth-scheme-basic",
        "inputDescriptors": [
        {
        "id": "username",
        "name": "Username",
        "description": "Username",
        "inputMode": "textbox",
        "isConfidential": false,
        "validation": { "isRequired": false, "dataType": "string" }
        },
        {
        "id": "password",
        "name": "API Token",
        "description": "API Token Found on your saucelabs account page",
        "inputMode": "textbox",
        "isConfidential": true,
        "validation": { "isRequired": true, "dataType": "string" }
        }
        ]
        }
        ]
        }
        }
        }

        NOTE: I've been asked by Microsoft to explain that even though the below code will currently create your custom auth scheme, the product still assumes that the standard list of authentication schemes is fixed. You will run into unforeseen issues until this fully opens up at some point in time.

        I'm leaving the below piece for reference, as it's a nice way to understand how the extensibility works and how items are defined, but please do not use it at the moment to create custom auth schemes. While your extension will likely pass all validations, it may cause all kinds of issues for your consumers.

        Instead, expand the Basic or Token auth scheme with additional parameters and change the Name/Description to make the UI reflect your needs.

        If you want to go beyond that and want to define your own UI with its own fields, the next step is to define your own endpoint-auth-scheme. The documentation on this contributionpoint is still scant, but if you dig into a TFS 2015 update 2 installation you'll find some very useful examples.

        Navigate to C:Program FilesMicrosoft Team Foundation Server 14.0ToolsDeployTfsServicingFilesExtensions to find the standard extensions that define the basic behavior of a standard installation. In there you'll find 4 vsix files



        If you dig a little deeper you'll find extension.vsomanifest which contains the Json snippet you're after. The example from the Service Credential is one of the most extensive:

        {
        "contributions": [
        {
        "id": "endpoint-auth-scheme-service-principal",
        "description": "Service Principal based endpoint authentication scheme",
        "type": "ms.vss-endpoint.service-endpoint-auth-scheme",
        "targets": [
        "ms.vss-endpoint.endpoint-auth-schemes"
        ],
        "properties": {
        "name": "ServicePrincipal",
        "displayName": "Service Principal Authentication",
        "inputDescriptors": [
        {
        "id": "servicePrincipalId",
        "name": "Service Principal Id",
        "description": "Client Id for connecting to the endpoint.nRefer to link on how to create Azure Service Principal.",
        "inputMode": "textbox",
        "isConfidential": false,
        "validation": {
        "isRequired": true,
        "dataType": "string"
        }
        },
        {
        "id": "servicePrincipalKey",
        "name": "Service Principal Key",
        "description": "Service Principle Key for connecting to the endpoint.nRefer to link on how to create Azure Service Principal.",
        "inputMode": "passwordbox",
        "isConfidential": true,
        "validation": {
        "isRequired": true,
        "dataType": "string"
        }
        },
        {
        "id": "tenantId",
        "name": "Tenant Id",
        "description": "Tenant Id for connecting to the endpoint.nRefer to link on how to create Azure Service Principal.",
        "inputMode": "textbox",
        "isConfidential": false,
        "validation": {
        "isRequired": true,
        "dataType": "guid"
        }
        }
        ]
        }
        }
        ]
        }

        You'll be able to stick these in your own extension manifests in order to create a full custom endpoint credential type with a complete custom authentication scheme. The sample below can be adapted to do exactly that:

        {
        "manifestVersion": 1,
        "id": "jessehouwing-vsts-custom-authscheme",
        "name": "Custom Authscheme",
        "version": "0.0.0",
        "publisher": "jessehouwing",
        "targets": [
        {
        "id": "Microsoft.VisualStudio.Services"
        }
        ],
        "scope": [
        ],
        "description": "Creates a custom auth scheme and matching endpoint definition.",
        "categories": [
        "Integrate"
        ],
        "tags": [
        "Sample"
        ],
        "screenshots": [
        ],
        "content": {
        },
        "links": {
        },
        "branding": {
        "color": "rgb(36, 43, 50)",
        "theme": "dark"
        },
        "icons": {
        },
        "files": [
        ],
        "contributions": [
        {
        "id": "endpoint-auth-scheme-custom",
        "description": "Jesse's custom scheme.",
        "type": "ms.vss-endpoint.service-endpoint-auth-scheme",
        "targets": [
        "ms.vss-endpoint.endpoint-auth-schemes"
        ],
        "properties": {
        "name": "CustomAuthScheme",
        "displayName": "Jesse's Custom Authentication Scheme",
        "inputDescriptors": [
        {
        "id": "email",
        "name": "Email",
        "description": "Email.",
        "inputMode": "textbox",
        "isConfidential": false,
        "validation": {
        "isRequired": true,
        "dataType": "string"
        }
        },
        {
        "id": "passphrase",
        "name": "Passphrase",
        "description": "Passphrase.",
        "inputMode": "passwordbox",
        "isConfidential": true,
        "validation": {
        "isRequired": true,
        "dataType": "string"
        }
        }
        ]
        }
        },

        {
        "id": "marketplace-service-endpoint",
        "description": "Visual Studio Marketplace",
        "type": "ms.vss-endpoint.service-endpoint-type",
        "targets": [
        "ms.vss-endpoint.endpoint-types"
        ],
        "properties": {
        "name": "my-custom-scheme",
        "displayName": "Custom Scheme",
        "url": "https://app.market.visualstudio.com/_apis/gallery",
        "authenticationSchemes": [
        {
        "type": "endpoint-auth-scheme-custom"
        }
        ]
        }
        }
        ]
        }


        Automatically populate your Source branch when publishing to Sonar

        When you enable your build definition to trigger on multiple branches, you may not want them all to publish into the same Sonar project. 
        Sonar has the concept of Branches, they're simply appended to the Project Key with a `-`. This prevents an old Hotfix build from messing up the trend information of your current development. It also helps you configure different baselines for older versions (branches).
        When building from the Visual Studio Team Services Build tasks you can configure the branch automatically by including the Build.SourceBranchName variable in your Project Key:

        Some background on the values assigned to this variable can be found on the Visual Studio Team Build Variables documention:

        Build.SourceBranchName
        BUILD_SOURCEBRANCHNAME
        The name of the branch the build was queued for.
        • For Git this is the last path segment in the ref. For example inrefs/heads/masterthe name ismaster.
        • For TFVC this will last path segment in the root server path for the workspace. For example in $/teamproject/branch the name is branch

        Configure SSL for SonarQube on Windows

        The documentation for SonarQube explains how to configure SSL when you're running on Linux and how to use the native Tomcat functionality for a simple test environment, yet they recommend not to use this functionality in any production like setting.

        Instead SonarQube recommends the use of a Reverse Proxy to secure you sonar installation. With the help of IIS and the Url Rewrite module, that's a piece of cake to setup.

        What you'll need:

        After installing and enabling these features, I had to do an IIS Reset and re-open the IIS Manager for all features to start working.
        Next we'll go through the steps to configure the reverse proxy.
        First step is to create a IIS website which will act as the reverse proxy.
        Unless you're required to do Kerberos authentication, you don't need to configure any form of authentication on your Reverse Proxy. It should forward the challenge from SonarQube if you've configured Active Directory integration there. 
        Configure the binding to use SSL and setup the correct hostnames and the certificate. I'm cheating a little by using the IIS Express Development Certificate installed on my machine:
        Next we'll open the URL Rewrite settings to configure reverse proxy:
        Click Add Rule to create a new rule
        And pick "Reverse Proxy" from the list of templates:
        Enter the destination server URL (can be http://blog.xebia.com:9000, or even a remote server) and click OK to create the rule:

        You're back in the URL Rewrite screen where we'll need to add an extra server variable which we'll send along with the request to the other server in order to tell SonarQube it's actually behind a Reverse Proxy that's doing the SSL offloading for it:
        Click "Add..." to create the server variable:
        Add the server variable "X_FORWARDED_PROTO" to allow the Rewrite Module to manipulate this header:
        You should now have the variable listed in the Variable list. Click "Go back to Rules" to move back to the rules list:
        Edit the URL Rewrite rule you've just created:
        Expand the Server variables section of the rule definition:
        Add the "X_FORWARDED_PROTO" header you've allowed in the previous step and give it the value "https":
        Apply the changes:
        And now you should be able to access SonarQube over SSL. You may want to configure the original SonarQube instance to only accept traffic from your reverse proxy or only accept traffic from localhost through the Windows Firewall.