Skip to content
Docs
Roadmap
Create Roadmap

Create Roadmap

A Roadmap is the core configuration that tells recommit where to cherry-pick your code. It defines the target branches and rules for automatic synchronization.

What is a Roadmap?

When you merge a Pull Request, recommit uses the Roadmap configuration to determine:

  • Which branches should receive the cherry-pick
  • In what order the branches should be processed
  • Whether to include the default branch automatically

Creating a Roadmap

Navigate to Roadmap Settings

  1. Go to Console (opens in a new tab)
  2. Click Create Roadmap button

Configure Basic Settings

Fill in the roadmap configuration:

FieldRequiredDescription
NameYesA descriptive name to identify this roadmap
BranchesConditionalTarget branches, separated by space
RegexpConditionalRegex pattern for dynamic branch matching
Cherry-pick to Default BranchNoAlways include the repo's default branch
⚠️

Branches and Regexp: Provide at least one to define your target branches. You can also use both—use Branches for existing known branches, and Regexp to automatically match future branches.

Set Target Branches

Enter your target branches separated by spaces:

main v3 v2 v1
⚠️

Branch Order Matters! Cherry-picks are processed in order v1 → v2 → v3 → main (from end to start of list). When a PR is merged, cherry-picks start from the branch after the source branch. For example, if a PR is merged to v2, it will be cherry-picked to v3 and main.

Save the Roadmap

Click Create to save your roadmap. You can now link repositories to this roadmap.

Configuration Examples

Open Source Library (Multiple Versions)

Maintaining a library like lodash or axios with multiple major versions:

Name: Library Releases
Branches: v2 v3 v4 main
Cherry-pick to Default Branch: ✓ Enabled

Result: If a PR is merged to v3, it will be cherry-picked to v4 and main.

Enterprise Product (Release Branches)

A SaaS product with quarterly releases:

Name: Quarterly Releases
Branches: release-2025-q4 release-2026-q1 develop
Cherry-pick to Default Branch: ✗ Disabled

Security Patches

Backporting security fixes to all supported versions:

Name: Security Backports
Branches: v3-lts v4-lts v5-lts main
Cherry-pick to Default Branch: ✓ Enabled

Cherry-pick to Default Branch

When enabled, recommit will always include the repository's default branch (e.g., main) in cherry-picks, even if it's not listed in your branches.

Example:

  • Repository default branch: main
  • Configured branches: v3 v2 v1
  • With option enabled: cherry-picks to main v3 v2 v1
  • With option disabled: cherry-picks to v3 v2 v1 only

This ensures changes are always included in your default branch, even when PRs target other branches.

Using Regexp (Advanced)

For dynamic branch matching, you can use a regex pattern to automatically include future branches that match a pattern.

Regexp: ^release-.*$

This will match branches like:

  • release-2026-q1
  • release-2025-q4
  • release-hotfix

Combining Branches and Regexp

You can use both Branches and Regexp together for maximum flexibility:

Name: Hybrid Release Strategy
Branches: main v3 v2
Regexp: ^v\d+$

How it works:

  • Branches: Explicitly includes main, v3, v2 (existing branches)
  • Regexp: Automatically matches any future version branches like v4, v5, etc.

This is ideal when you want to:

  1. Ensure specific branches are always included
  2. Automatically pick up new version branches without updating the roadmap

When a branch matches both Branches and Regexp, it's only processed once (no duplicates).

⚠️

Regexp is an advanced feature. Test your patterns carefully before using in production.

Next Steps

After creating a roadmap:

  1. Link repositories to your roadmap
  2. Enable repositories to start auto cherry-picking
  3. Manage your roadmap to update settings later