Git SSH Integration

Monaca allows you to connect your project with any Git service repository through SSH authentication. GitHub is a Git service that supports SSH connection. Therefore, we will be using GitHub as an example in the following subsections.

Generally, you can connect only to public repositories. However, with a valid Monaca subscription plan, you can also connect to private repositories. Please refer to Monaca Subscription Plan.

Prerequisites

In order to use version control in the Monaca Cloud IDE, you will need an account from a Git service with SSH support

Setup

Step 1: Generating a SSH key

  1. Go to the SSH Key Management page.

  2. Click the Generate SSH Key button.

3. Copy the generated key. It will be used in the next section.

Step 2: Adding the SSH key to a Git service

For proper authentication between Monaca and your Git service provider, the SSH key generated in the previous section needs to be added to your Git service account.

In this example, we are using GitHub. For other services, please review your Git service's documentation.

  1. Go to the SSH Keys page.

  2. Click the New SSH key button.

  3. Fill in the following information:

    • Title: The title of the key

    • Key: The SSH key generated in the previous step

  4. Then, click the Add SSH key button.

Connecting a Monaca project to a new Git repository

Step 1: Creating a new empty repository

You can create a new repository in any Git service. In this case, we are creating a new repository in GitHub as follows:

  1. Go to your GitHub account and create a new empty repository (without

    a readme file).

  2. Click the SSH button.

  3. Copy the SSH link (see the screenshot below). We will use this link in the next step.

Step 2: Connecting a Monaca project with a repository

  1. From the Monaca dashboard, open the project you want to connect to a repository.

  2. From the Monaca Cloud IDE menu, go to Project → VCS Configure.

  3. Select the Git option as shown below:

4. Input the Repository URL (the link you found in the previous step) and the Committer Name. Please be aware that you cannot change to another repository after configuration.

5. Click Initialize.

6. Your project is uploaded to the new repository. By default, your working branch will be configured as master. If you want to switch to another working branch, please go to Project → VCS Configure.

Importing a project from a Git repository to Monaca

  1. Log into the Monaca Cloud IDE with your Monaca account.

  2. From the dashboard, click Import.

  3. Select Import from Git. Then, input the repository URL and click the Import Project button.

4. If the import is successful, the new project is added to Monaca Dashboard. By default, your working branch will be configured as master. If you want to switch to another working branch, please go to Project → VCS Configure.

Working with a remote repository

Once you have successfully connected your project with a repository, you can start working on the same project with your team members and keep it synchronized to the latest updates in Monaca Cloud IDE.

Monaca Cloud IDE provides a very user-friendly interface supporting the version control of your code. Without learning how to use Git, you can still perform some basic Git commands directly from the IDE.

Checkout from the current working branch

If you have more than one branch and want to change the current working branch, please do as follows:

  1. From the Monaca Cloud IDE menu, go to Project → VCS Configure.

  2. Choose the branch you want to switch to and click the Clear Cache & Save button.

You will get an error message if you try to checkout to a new branch while you have not committed changes on the current working branch yet. Please push your changes to the current branch before checking out to another branch.

Retrieve changes from remotes

If you are familiar with Git commands, retrieving changes from a remote branch refers here to the git pull command. To retrieve changes from a remote branch, go to Project → Pull in the Monaca Cloud IDE menu. If there are changes in your remote branch, you will receive those updates in your working branch.

When you create a project in the IDE, Monaca keeps all the files in the www folder. Files outside of this folder are also synced even though they will not appear in the IDE.

Commit changes to a remote repository

After making changes in the current working branch, you are able to commit them back to your remote repository. To commit your changes, please do as follows:

  1. From the Monaca Cloud IDE menu, go to Project → Commit .

  2. Fill in your commit message and check the files you want to commit. Then, click the Commit button.

  3. Once you are ready to push the updates to the remote repository, select Project → Push. After the push, your remote repository will contain the latest changes made in the Monaca Cloud IDE.

Show remote commit history

Since there are numerous public and private Git services available to choose from and the URL to the remote commit history is not known for all the services, this option is not available for projects linked to a repository with SSH.

In order to see the full history of your previous commits in the remote repository, go to Project → Show Remote History. You will be redirected to the remote Git service provider’s website showing the commit history of your current branch.

Show local commit history

Every commit you make in your Monaca Cloud IDE is called a local commit. You are able to view your local commit history through Project → Show Commit History. To view the changes of each commit, click the commit on the left panel.

Last updated