Previous Topic: Undo ChangesNext Topic: Use the Harvest SCM Explorer


Synchronize a Project

After you complete your project changes, synchronize and then commit your changes to the repository so that others can have access to the latest versions. While you were working on your files, other developers may have committed changes to the repository.

Synchronizing projects rather than individual files is the recommended and most efficient method of using CA Harvest SCM. You track only your project, not individual files. New, changed, and deleted files are tracked for you. You can synchronize multiple files or folders, or any combination of projects, folders, or files, using one synchronize operation. For each project or folder, all files that are descendents of the project or folders are included in the synchronization.

To synchronize a project

  1. Navigate the Synchronizer view tree, and select the project that you want to synchronize.
  2. Right-click the project folder, and select Synchronize from the shortcut menu.

    If you are synchronizing many files, an information meter shows the synchronization progress.

    The hierarchical structure of the folder you selected displays in the view. Arrows next to files show whether the change is incoming, outgoing, or conflicting.

  3. (Optional) Click a toolbar icon to filter the changes:
    Show Incoming Additions

    Shows downward arrows with plus signs (v+) that indicate incoming additions. An incoming addition means that a new item has been added to the CA Harvest SCM repository. A Get Latest Version action transfers the new item to your Visual Studio solution.

    Show Incoming Changes

    Shows downward arrows with pencil signs that indicate incoming changes. An incoming change means that a new version has been created in the CA Harvest SCM repository. A Get Latest Version action transfers the new version to your Visual Studio solution.

    Show Incoming Deletions

    Shows downward arrows with minus signs (v -) that indicate incoming deletions. An incoming deletion means that either the item does not exist or a new D-tagged version is created for that item in the CA Harvest SCM repository. A Get Latest Version action deletes the corresponding item from your Visual Studio solution.

    Show Outgoing Additions

    Shows upward arrows with plus signs (^ +) that indicate outgoing additions. An outgoing addition means that a file, folder, or both is added to your Visual Studio items and is not yet in the repository. A commit transfers the new file, folder, or both to the CA Harvest SCM repository.

    Show Outgoing Changes

    Shows upward arrows (^) with pencil signs that indicate outgoing changes. An outgoing change means that a file, folder, or both is modified locally. Modification can be edit, rename, move, or a combination of them. A commit transfers the changes to the repository and create a version.

    Show Outgoing Deletions

    Shows upward arrows with minus signs (^ -) that indicate outgoing deletions and means that the file or folder is deleted locally. A commit creates a D-tagged version in the CA Harvest SCM repository.

    Show Conflicting Changes

    Shows double arrows (<->) that indicate that the file has been modified locally and remotely. The conflict must be resolved before you can perform a commit. Optionally, you can update your local Visual Studio solution with repository changes by performing a Get Latest Version action.

    The view shows files that match the filter mode which you selected.

    Note: You can right-click a file in tree to open a shortcut menu with options determined by the direction of the change.

  4. (Optional) Click a toolbar button that corresponds with one of the following actions:
    Commit

    Commits the local changes to repository.

    Note: This action is disabled when none of the selected items has an outgoing change or the selected item’s parent has an outgoing change and the parent node is not selected.

    Get Latest Version

    Updates your local items with repository changes.

    Note: This action is disabled when none of the selected items has an incoming change or the selected item’s parent has an incoming change and the parent node is not selected.

    Mark as Resolved

    Confirms that the reported conflict of an item has been resolved. You can right-click a conflicting item and select Mark as Resolved to mark an item as resolved. When you perform a Mark as Resolved, the item appears as an outgoing change and you can Commit the changes to the repository.

    Note: This action is disabled when more than one item is selected and the selected item does not have a conflicting change.

    Show in Solution Explorer

    Transfers the focus from an item in the Synchronizer view to its corresponding item in the Solution Explorer. This action is helpful when you are working in a large solution. You can right-click an item in the Synchronizer view and select Show in Solution Explorer to move the focus to the corresponding Solution Explorer item.

    Note: This action is disabled when the selected item is not a file.

    Compare with Repository

    Compares the local file with its corresponding repository version. You can right-click an item in the Synchronizer view and select Compare with Repository to compare an item. Alternatively, you can compare any item in the Synchronizer view by double-clicking the item.

    Get Repository—Actions

    Enables the following advanced actions, which you can use in a specific scenario where a conflict occurs for an item that has been refactored on a local computer:

    Get Repository—Name

    Gets the name of the current repository version and lets you rename the local name with the current repository name.

    Get Repository—Path

    Gets the path of the current repository version and lets you move the local item to the location that corresponds to the current repository location.

    Get Repository—Name and Path

    Gets the name of the current repository version and lets you rename the local name with the current repository name.

    Gets the path of the current repository version and lets you move the local item to the location that corresponds to the current repository location.

    Note: These actions execute the refactoring changes only; they do not get the content of the current repository version. These actions can help you resolve conflicts easily. These actions may not work with folders.

    The action you selected executes.