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.
Existing and new team projects continue to offer Team Foundation Server 2012 build process templates. As a result, for example, when you create a build process in a TFVC team project, the build process parameters will be those described in Define a Build Process that is Based on the Default Template (Visual Studio 2012).
When you create a new team project, it will offer you the new default templates, but they are not the default, so you must manually select them when you create your build process.
You can also add the new default templates to existing hosted team projects by creating a new team project and copying the template into your old team project (see Customize your build process template) or by enabling the Windows 8.1 hosted build controller (see Use the hosted build controller).