Dela via


Resolve issues that can occur when you upgrade

When you upgrade to Visual Studio Team Foundation Server 2013 from earlier versions of Team Foundation Server, you might need to resolve some issues in order to continue using earlier team projects, build processes, build servers, and versions of Visual Studio.

What do you want to do?

  • Run earlier build processes

    • Use an earlier build process template to build some kinds of apps

    • Run an earlier build process that leverages custom activities

    • Run an earlier build process based on a custom template that you created or edited using Visual Studio 2010

  • Use earlier versions of Visual Studio

  • Using earlier build servers

  • Work in team projects hosted on Visual Studio Online

Run earlier build processes

After you upgrade to Visual Studio Team Foundation Server 2013, you can continue to use your earlier build processes.

Tip

You can continue to use build definitions (and even create new ones) that are based on earlier build process templates, but in many cases, you will obtain better results by using the new default templates.

In a few situations, you must take some actions to enable your earlier build process to function correctly on Visual Studio Team Foundation Server 2013.

Use an earlier build process template to build some kinds of Visual Studio Team Foundation Server 2013 apps

If your build process template is from an earlier version of TFS, you might need to edit your template and modify an MSBuild activity property. If your build server is running:

  • Visual Studio Team Foundation Server 2013: Set the MSBuild activity ToolVersion property to 12.0

  • Visual Studio Team Foundation Server 2012: Set the MSBuild ToolPath property to the path to the path to MSBuild 12. In many cases, this path is either C:\Program Files (x86)\MSBuild\12.0\Bin\ (32-bit) or C:\Program Files (x86)\MSBuild\12.0\Bin\amd64 (64-bit). You must also install Visual Studio 2013 on the build agent.

Run an earlier build process that leverages custom activities

Before you can run a build process that leverages custom build process activities, you must first recompile the activities with the .NET Framework 4.5.1 (for example, using Visual Studio 2013 or Visual Studio Team Foundation Server 2013 Team Foundation Build) and then check them in to the version control folder referenced by your build controller. If you try to run a build process that leverages custom build activities compiled with an earlier version of the .NET Framework, you might see the following message in the build results log: “Set property 'Microsoft.TeamFoundation.Build.Workflow.Activities.SyncWorkspace.RequestsFailed' threw an exception.”

Run an earlier build process based on a custom template

You must use only Visual Studio 2013 to edit your build process templates. If a build process template has been edited using Visual Studio 2010, you must view the code and remove all strong name references to Microsoft.TeamFoundation namespaces from the Activity element.

For example, you must remove lines such as:

xmlns:mtvc="clr-namespace:Microsoft.TeamFoundation.VersionControl.Client;assembly=Microsoft.TeamFoundation.VersionControl.Client, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"

and leave in lines such as

xmlns:mtvc1="clr-namespace:Microsoft.TeamFoundation.VersionControl.Client;assembly=Microsoft.TeamFoundation.VersionControl.Client"

Otherwise, you might receive a message such as Error 7 Compiler error(s) encountered processing expression "Workspace". Value of type 'Microsoft.TeamFoundation.VersionControl.Client.Workspace' cannot be converted to 'Microsoft.TeamFoundation.VersionControl.Client.Workspace'. Type mismatch could be due to…

Tip

Jason Pricket published some information and some source code to automatically clean these issues out of your build process template. See Upgrading your build definitions from TFS2010 to TFS2012 and TFS 2012 – Cleaning up Workflow XAML files (AKA removing versioned namespaces).

Use earlier versions of Visual Studio

If you are using Visual Studio 2010 or Visual Studio 2012 (either RTM or patched with the latest update), you

  • Can queue Visual Studio Team Foundation Server 2013 Default Template build definitions

  • Cannot modify parameters (when queuing or when editing) or edit the Visual Studio Team Foundation Server 2013 default template.

  • Can continue to modify parameters (when queuing or editing) and edit Team Foundation Server 2010 and Team Foundation Server 2012 default templates respectively.

Using earlier build servers

You can connect a TFBuild 2010 or TFBuild 2012 server to your on-premises Visual Studio Team Foundation Server 2013 application-tier server. You cannot run Visual Studio Team Foundation Server 2013 TFBuild on the same computer as TFBuild 2012 or TFBuild 2010. See Deploy and configure a build server.

Visual Studio Team Foundation Server 2013 Default Process builds can run only on Visual Studio Team Foundation Server 2013 build servers. They cannot run on earlier build servers.

On your build agent, you must install the version of Visual Studio that your team uses on its dev machines.

Work in team projects hosted on Visual Studio Online

There are a few issues that you might need to deal with if your team project is hosted on Visual Studio Online.