Learn how to collaborate from RoboHelp using Git.

Prerequisites for connecting to Git

  1. Download and install Git on your system. Click here to download Git for Windows. For more information, see Git Help

  2. Adjust your PATH environment variable so that Git and optional UNIX tools can be used from the Windows command prompt. To do so, select this option in the Git installer:

    Git install screen

    Your PATH environment variable must contain this value:

    C:\Program Files\Git\usr\bin

    Git path variable


    Since Windows 10 version 1803, Microsoft has added native SSH support, which is known to cause conflict with Git connections. If your Windows version is higher than 1803, ensure that the path to SSH binaries in the Git installation (C:\Program Files\Git\usr\bin) takes precedence over the path to SSH binaries provided by Microsoft (%SystemRoot%\system32). You can access the system PATH environment variable through the System Properties dialog box > Advanced tab > Environment Variables.

  3. Register your external diff/merge application in RoboHelp. To do so:

    1. Choose Edit > Preferences

    2. In the Application Settings dialog box, click the Version Control tab. 

    3. In the External Diff/Merge Application field, click  to select your external diff/merge application such as p4merge.

      Verify that Git supports your application by running the following command on the command prompt:

      git mergetool --tool-help

    4. Click Done.

Create a Git connection profile

To connect RoboHelp with Git, create a Git connection profile.

  1. On your Git server, a repository must exist to which you can connect from RoboHelp. To create a repository, follow the instructions on GitHub, Bitbucket, or from your Git hosting provider.


    If the connection profile is to be used to upload the currently open RoboHelp project to your Git server, the new repository URL must be empty. While creating the repository, ensure that you do not initialize it with a readme file.  

  2. In RoboHelp, choose Collaborate > New Connection.

  3. In the Connection Profiles dialog box, specify a name for your connection profile.

  4. From the Version Control drop-down list, select Git.

  5. In the Repository SSH URL field, specify the repository SSH URL in one of the following formats:

    • git@<servername>:<orgName/repoName>.git 
    • ssh://git@<servername>/<orgName/repoName>.git

    For example, git@github.com:adobe/brackets.git or ssh://git@github.com/adobe/brackets.git.

  6. In the User ID field, specify the name of the user account that has read/write access to the specified Git repository.

  7. In the Branch field, specify the branch name on the server. The default branch name is master.

  8. In the SSH Private Key field, specify or navigate to the path of the SSH private key that you use for connecting to the repository on your Git server. To set up a new SSH connection to your Git server, see Set up an SSH connection


    If the specified SSH key contains a passphrase, RoboHelp prompts you to enter this passphrase and saves it in the system Credential Manager for subsequent use. The record is stored in this format:
    If you are using a new SSH key for connection to the same repository but with a different passphrase, delete or update the corresponding record in the system Credential Manager. If RoboHelp does not find a matching record in the system Credential Manager, it prompts for the passphrase again. For more information about system Credential Manager (Windows), see Microsoft Help.

    If the key is successfully added to the SSH agent running on your system and the connection to the specified Git server is successful using this key, a confirmation prompt appears. The Save button is enabled only if this step is successful. Otherwise, verify the connection setup by referring to Set up an SSH connection.

  9. In the Local Path field, specify a path on your computer that maps to the repository on the server.

    If the connection profile is to be used to upload the currently open RoboHelp project to your Git server, specify the folder containing the project or any of its parent folders. The local Git repository is initialized in this folder and is published to your Git server. 

    Otherwise, to use the connection profile to clone a repository from your Git server, provide the path to an empty local folder in which the repository is to be cloned. If the specified path does not exist, it is created before cloning.

  10. Click Save.

Set up an SSH connection

  1. Create an SSH key pair (public and private) using GitBash. For more information, see Git Help

  2. Add the new SSH public key to your account on your Git server by following the instructions on GitHubBitbucket, or from your Git hosting provider.

  3. Test the connection to your Git server using the SSH key pair by following the instructions on GitHub, Bitbucket, or from your Git hosting provider. Connect to the specified Git server via SSH using the following command on the terminal:
    $ ssh -T git@<servername>


    You may have to specify additional arguments if your Git server is using a port for SSH connections which is different from the default (22). For example, add the option -p <portnumber> to specify the alternate SSH port number.

    Ensure that SSH connections are not blocked by your firewall. Git connection through RoboHelp is successful only if this step succeeds.



Clone a project from your Git server

  1. In RoboHelp, choose Collaborate > Open Connection and select a Git connection profile. The repository is cloned at the local path specified in the connection profile.


    If the specified local path in the connection profile already contains a Git repository, cloning is skipped.

  2. In the Open dialog box, select a RoboHelp project file (.rhpj) and click Open.

    RoboHelp opens the project file.  


    When you open a RoboHelp project for the first time using these steps, connection information is stored inside the project for subsequent use. So directly open the project using one of the ways described in Open a project

Work with files under version control

Add content to or edit a topic. You can quickly begin editing files without any network connection. 

Also, you can do the following:

Commit your changes

  1. To commit the changes to your local repository, choose Collaborate > Commit

    The Commit dialog box opens.

  2. In the Commit dialog box, from the list of modified, newly added, and deleted files, select the files you want to commit.

  3. To be able to commit the changes, specify a commit description. 

  4. Click Commit

    After the commit is successful, RoboHelp displays a success message.

Push your changes to the server

To push pending commits to your Git server, choose Collaborate > Push

If another user updated the repository on your Git server, your push operation fails. In this case, pull the latest version from the repository on the server and then retry the push operation.


To perform the push operation, you must have write access to the repository on your Git server.

Pull latest versions from the server

  1. To sync your local repository to match the repository on the server, choose Collaborate > Pull.

    If some of your local files contain edits that are not yet committed to your local repository and these files are updated on the server, the pull operation fails. In this case, commit your changes first. 

  2. After successfully pulling changes, files that contain both local and remote commits are merged. If the merge is unsuccessful, a merge conflict occurs and it must be resolved. To resolve merge conflicts, choose Collaborate > Commit.

    In the Commit dialog box, files containing merge conflicts are indicated as  in the Action column.

  3. Click  against the file to merge conflicts using the external diff/merge application that you have registered in Step 3 in Prerequisites for connecting to Git.

    The registered diff/merge application opens for the specific file. 

  4. Resolve the conflicts and close the diff/merge application.

  5. Commit the resolved files by clicking Commit in the Commit dialog box.

Add a project to your Git server

  1. To add a project, choose Collaborate > Add Project and select a Git connection profile.

    The local path in the profile must contain the current project. For more information, see Step 9 in Create a Git connection profile.  


    This operation fails if the repository specified in the connection profile contains any files. To add your RoboHelp project to an existing repository on the server, first clone that repository on your system and then copy or move your project into the folder in which the repository is cloned.

    The Commit dialog box opens.

  2. Commit the required files as described in Commit your changes

  3. Push the commit as described in Push your changes to the server

Remove Git connection

  1. To remove the Git connection from the current RoboHelp project, choose Collaborate > Remove Connection.

  2. If you want to delete the local repository also, select the Delete any source control information from the local folder also field in the Confirm dialog box. 


    Commit and push all your changes before deleting the repository.

  3. Click Ok.

    When the connection is removed, RoboHelp reopens the project, and the Add Project option in Collaborate menu becomes available. To add the project again, see Add a project to your Git server.


    If you did not delete the local repository, when you add the project using the same connection profile as before, your local changes are preserved and you can commit/push them as required. 

    If you deleted the local repository, you cannot push changes to the repository on the server mentioned in the same connection profile as it already contains files. So you must add the project using a connection profile that contains an empty repository.

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Twitter™ and Facebook posts are not covered under the terms of Creative Commons.

Legal Notices   |   Online Privacy Policy