Skip to main content

Catch-up commits in Source Control

Learn more about how Retool uses catch-up commits and how to disable them.

In order to keep your branch up to date, Retool sometimes creates an automatic commit, called a catch-up commit, which keeps your branches up to date with the main branch. The commit has the following message:

This commit is automatically generated by Retool to update the current branch. You don't need to be concerned about it.

Example scenario

The following scenario shows an example of when a catch-up commit is necessary:

  1. Joe creates a branch BranchA in source control and edits a component TextInput1.
  2. In a different branch BranchB, Emma edits Chart1, and the changes are merged to the main branch.
  3. Joe opens Chart1 on BranchA for the first time.
  4. Retool creates a catch-up commit on BranchA that contains Emma's changes to Chart1.

In step 3 of this example, BranchA does not contain changes to Chart1 that were made by Emma on BranchB and merged to the main branch. If the Joe continues to edit without the catch-up commit, he would see the app in an outdated state, and he would encounter merge conflicts when merging BranchA with main.

In a traditional software development process, this process is handled with a git rebase. Retool does not support rebasing, and instead performs a git cherry-pick to introduce the changes from main with an auto-generated commit.

Disabling catch-up commits

If you want to ensure that developers in your organization retain complete control of changes within their feature branches, you can disable catch-up commits using the following steps:

If you disable catch-up commits, users in your organization must manually, outside of Retool, rebase their branch and resolve conflicts in order to keep their branch up to date.

  1. Navigate to Settings > Beta and toggle on Show disable auto catch up commits setting.
  2. Navigate to Settings > Source Control and click the Edit Settings button on the top right.
  3. Toggle on the Disable auto catch up commits setting.

Avoiding merge control issues

To avoid issues with catch-up commits and other merge control mechanisms, refer to Retool's Merge conflict prevention strategies.