Source Control Best Practices
Overview
Retool Platform provides source code management (SCM) integration when using an Enterprise license. SCM integration supports several Git-based providers and focuses on tracking apps, workflows, queries, resources, and themes. This document will cover the best practices employed by Retool Professional Services / Partners to consistently manage development and releases to the Retool platform. For more information on Source Control setup please refer here.
Retool Artifacts
Retool development focuses on creating Apps, Workflows, Queries, Resources, and more. When developing within the Retool platform, an artifact, JSON or Toolscript represents the developed core elements.
Branching Strategy
When employing Git-based solutions for source code management, it is essential to identify the branching strategy builders and operators use. A branching strategy identifies how a development team has agreed to collaborate when employing a Git repository. This can include branch identification, naming convention, branch-to-environment alignment, and more.
Feature Branching Strategy (low-complexity)
Retool 3.114-stable release (Q4) introduces support for feature branching across Retool Apps, Modules, Resources, Workflows, and the Query Library. The feature branching strategy comprises a main branch and individual/unique/temporary feature branches that capture new work by the branch owner. When new work is completed, the owner defines a pull request to merge the Git commits in a feature branch with the main branch. The following image demonstrates this in action; more details are available here.

Software Development Lifecycle Example
Once developers have implemented application changes, it is essential to understand what Retool provides to deploy the change and Retool's recommendations for environments when using Retool Self-hosted and Retool Cloud. A separate document discussing these features is found here. Using this, the following examples discuss a feature branch and gitflow deployment.