Connecting to Team Foundation Version Control

Note

Note: Team Foundation Version Control support is currently in preview and some functionality is not yet fully working. We'd love feedback from you on any issues at Developer Community. More changes are still to come!

Azure Repos provides two models of version control: Git, which is distributed version control, and Team Foundation Version Control (TFVC), which is centralized version control. This article provides an overview and a starting point for using TFVC with Visual Studio for Mac.

Requirements

  • Visual Studio Community, Professional, or Enterprise for Mac version 7.5 or later.
  • Azure DevOps Services, or Team Foundation Server 2013 and later.
  • A project in Azure DevOps Services or Team Foundation Server, configured to use Team Foundation Version Control.

Installation

In Visual Studio for Mac, choose Visual Studio > Extensions... from the menu. In the Gallery tab, select Version Control > Team Foundation Version Control for TFS and VSTS and click Install…:

Extension manager

Follow the prompts to install the extension. Once it's installed, restart the IDE.

Updating the extension

Updates to the TFVC extension are made periodically. To access updates, choose Visual Studio > Extensions... from the menu and select the Updates tab. Select the extension in the list and press the Update button:

Extension manager showing update

Press Install on the next dialog to uninstall the old package and install the new one.

For information on what's new in each release, see the Release Notes.

Using the add-in

Once the extension is installed, select the Version Control > TFS/Azure DevOps > Open from Remote Repository menu item.

Menu item to open the extension

Choose either VSTS or Team Foundation Server to get started and press Continue:

Connect with a Server

Azure Repos Authentication

When you select a project that is hosted on Azure Repos, you're prompted to enter your Microsoft account details:

Connect with Azure Repos

TFS Authentication

To connect to TFS, enter the server details and your account credentials. Enter a domain to use NTLM authentication, otherwise leave blank to use basic authentication. Select Add Server:

Sign in to a TFS Server

Selecting a project

Once you've successfully authenticated, you can see a list of repositories that are associated with the account in the Open from Source Control dialog:

Open from Source Control dialog with projects displayed

This dialog is organized with the following nodes:

  • Azure DevOps organization or collection – This displays all organizations connected to the Microsoft account you logged in with.
  • Projects - In each organization or collection, you can have a number of projects. A project is where source code, work items, and automated builds are hosted.

At this point, you can search and filter by the name of a project or organization.

Adding a new server

To add a new server to the list, press the Add Host button on the Open from Source Control dialog:

Highlighted add button to add new server to the list

Select the provider from the list, and enter your credentials:

Dialog showing option for source control provider

Creating a new workspace

To start working with a project, you need to have a workspace. If you don't already have a workspace, you can create one from the Workspace combobox in the Open from Source Control dialog:

Create new workspace combobox option

Set the name and local path for your new workspace and select Create Workspace:

Entering a name and local path for the new workspace

Using the Source Code Explorer

Once you've created a workspace and mapped your project, you can start working with the Source Code Explorer.

To open the Source Code Explorer, select the Version Control > TFS/Azure DevOps > Source Control Explorer menu item.

The Source Code Explorer enables you to navigate through all the mapped projects, their files, and folders. It also allows you to perform all the basic source control actions such as:

  • Get the latest version
  • Get a specific version
  • Check files in and out
  • Lock and unlock files
  • Add, delete, and rename files
  • View history
  • Compare changes.

Many of these actions are available through context actions on the project:

Context menu actions for a project

Managing workspaces

If you haven't already created a workspace, as described in the Creating a workspace section, you'll notice that the Source Code Explorer is empty:

empty source code explorer

To set up your remote project with a local workspace, use the following steps:

  1. Select the Server from the combobox.
  2. Note that there are "no workspaces" and that the Local Path is "Not Mapped". Select the Not Mapped link to display the Create new Workspace dialog.
  3. Provide a name for the workspace and then click Add Working Folder to map the project to a local folder on your computer:

    Create a new workspace dialog showing default options

  4. Select the "$" folder to map all projects on your server to the same workspace, or select an individual project, and click OK:

    Browse for folder dialog showing all projects

  5. Select the location on your local machine that you wish to map the project(s) to and click Select Folder.

  6. Confirm the details of the new workspace by pressing OK

    Create new workspace dialog with working folder added

Once your workspace is set up, it can be changed or removed by clicking the Manage Workspaces button in the Source Code Explorer.

Manage Workspaces

Troubleshooting

Problems using basic authentication

The following options can be used to authenticate with a server:

  • Oauth
  • Basic
  • Ntlm

To use basic authentication it is necessary to enable Alternative authentication credentials in Azure DevOps Services, by following the steps below:

  1. Sign in to your Azure DevOps organization as the owner (https://dev.azure.com/{organization}/{project}).

  2. From your organization toolbar, select the gear icon and select Policy:

    Policy settings option selected

  3. Review your application connection settings. Change these settings, based on your security policies:

    Policy settings option selected

I do not see anything in TFVC

To set up Team Foundation Version Control (TFVC) on your dev machine, you must create a workspace, as described in the Managing workspaces section.

In Source Control Explorer, press the Manage Workspaces Button. Follow the steps to map the project to a folder on your dev machine.

I do not see any / all of my projects

After authenticating you should see the list of projects. By default, only TFS projects are shown. To see other types of projects, check the "See all projects" box.

Keep in mind that projects that are on the server will not appear if you don't have the correct privileges.

I am getting the error "Cannot create the workspace. Please, try again"

When trying to create a new workspace, you should make sure the following conditions are met:

  • No use of invalid characters in the workspace name.
  • The name must be less than 64 characters.
  • The local path cannot be used by any other workspaces.