User Documentation

Keep your Git repository clean

Sign up for Upsun

Get your free trial by clicking the link below.

Get your Upsun free trial

When a Git repository contains a high number of references and files, the performance of Git can decrease. This is why most Git providers have repository size limits in place (for more information, see the GitHub, GitLab and Bitbucket documentation).

The API and Console are closely tied to Git. When the performance of Git decreases, API servers also become slower. As a user, you can then experience significant latencies. If your repository becomes too large, your Console may even become unresponsive, leaving you unable to access your project.

To avoid such issues, make sure you keep your Git repository clean by following the instructions on this page.

If you’re already facing performance issues and suspect they might be related to the size of your Git repository, see how you can troubleshoot a sizeable Git repository.

Enable the automated pruning of old branches in your project Anchor to this heading

To keep your repository size to a minimum, make sure that branches that don’t exist anymore in your repository have also been deleted from

To automate this process, when setting up a source integration, enable the prune-branches option.

If you already have a source integration set up and want to enable the prune-branches option, follow these steps:

  1. To enable the prune-branches option, you must first enable the fetch-branches option. To do so, run the following command:

    platform integration:update --project PROJECT_ID SOURCE_INTEGRATION_ID --fetch-branches true
  2. Then, to enable the prune-branches option, run the following command:

    platform integration:update --project PROJECT_ID SOURCE_INTEGRATION_ID --prune-branches true
  1. Navigate to your project.
  2. Click Settings.
  3. Click Project Settings.
  4. Click Integrations and select your source integration.
  5. Click Edit.
  6. Enter your access token and click Continue.
  7. Select your repository and check the following boxes:
    • Fetch branches from the remote repository to your project (fetch-branches option, mandatory to enable prune-branches).
    • Remove branches from your project that have disappeared remotely (requires the fetch branches option to be enabled) (prune-branches option).
  8. Click Save.

Upload your files through mounts Anchor to this heading

Keeping too many files, especially large binary files, in your Git repository can cause performance and stability issues. Therefore, recommends that you only commit your source code in Git.

To upload any other files to your app, create mounts and transfer your files directly to them.

Troubleshoot a sizeable Git repository Anchor to this heading

If you’re experiencing latencies or can’t access your Console anymore, your Git repository may have become too large and may need to be cleaned up. To do so, follow these instructions:

  1. Remove old, unwanted files from your repository (especially large files). You can do it manually, or use a tool such as BFG Repo-Cleaner.
  2. Remove stale branches from your repository and project.
  3. Rebase and/or squash commits to clean up your history.
  4. Make sure you enable the automated pruning of old branches in your project and upload your files through mounts to avoid facing the same situation in the future.

Is this page helpful?