Migration from AnkhSVN to VisualSVN is straightforward and requires just a few steps. For seamless migration, please make sure you are upgrading to VisualSVN 7.1 or newer that supports multiple working copies within a single solution.

Migrating to VisualSVN in Visual Studio 2019

Follow these steps to migrate to VisualSVN from AnkhSVN after upgrading to Visual Studio 2019:

  1. Uninstall or disable AnkhSVN via Extensions | Manage Extensions.
  2. Install VisualSVN. Follow these steps to install the VisualSVN plug-in in Visual Studio:
    1. In Visual Studio 2019, click Extensions | Manage Extensions.
    2. Click Online on the left pane and type "VisualSVN" into the Search box at the top-right corner of the window.
    3. Click Download next to VisualSVN for Visual Studio 2019 in search result.
    4. Wait for the download to complete and click Close.
    5. Close Visual Studio 2019 and then click Modify button on the appeared VSIX Installer dialog. VisualSVN will be installed and active next time you open Visual Studio 2019.

    Alternatively, you can download VisualSVN for Visual Studio 2019 from the official download page or from the  Visual Studio Marketplace.

    Tip
    In order to start using VisualSVN, you also need to download and install the latest stable version of the TortoiseSVN Subversion client.
  3. Go to Tools | Option | Source Control and select None as the Current source control plug-in. This step is required to remove the source control bindings that AnkhSVN puts into your project files.
  4. Open your versioned solution in Visual Studio.
  5. Visual Studio may prompt you to remove the source control bindings with the following message:

    The source control provider associated with this solution could not be found. The projects will be treated as not under source control. Do you want to permanently remove the source control bindings from the projects?

    1. Click Yes to remove the source control bindings. Visual Studio will clear the AnkhSVN bindings from all project files in your solution.
    2. Choose Extensions | VisualSVN | Commit main menu command to commit the changes made to the project files.
    3. Note
      If AnkhSVN is still used by other team members, ask them not to execute the Add Selected Projects to Subversion and Add Solution to Subversion AnkhSVN's commands. These are the commands that place AnkhSVN bindings into the project files. Note that AnkhSVN should function properly without these bindings in most of the common scenarios.

After these steps your solution projects will be disconnected from AnkhSVN and will become handled by VisualSVN. For example, you can now execute VisualSVN commands via Extensions | VisualSVN and via context menus. Also, you will see traffic-light status icons in the Solution Explorer. Read the VisualSVN Getting Started | Basic Work Cycle for further details.

If there are several team members working with the same solution, please ask them to update their working copies and then perform the steps 1, 2 and 4 of the above instructions:

  1. Update working copies to receive the AnkhSVN bindings removal.
  2. Uninstall or disable AnkhSVN.
  3. Install VisualSVN.
  4. Open versioned solution in Visual Studio.

Migrating to VisualSVN in Visual Studio 2017 and older

If you use Visual Studio 2017 or older versions, you need to follow almost the same instructions as given above, but relevant to your Visual Studio and VisualSVN version.

Migrating solutions with multiple working copies to VisualSVN

VisualSVN 7.1 for Visual Studio 2019 fully supports multiple working copies within a single solution. For further details see the article KB7: Using Multiple Working Copies in VisualSVN.

If you are using Visual Studio 2017 or older and your solution contains projects from multiple working copies, then the easiest way to migrate is to upgrade to Visual Studio 2019 and install VisualSVN 7.1. Alternatively you can reorganize your solution using the svn:externals property which is kind of a link to a different path within the same or another repository. For further details please read the Subversion documentation.

Last Modified: