Branches allow you to work on your workflows safely by creating isolated, editable versions of your projects. This Git-like development model ensures you can test and collaborate on changes without affecting your live production environment.
Types of branches
Your workflow consists of different types of branches, each serving a specific purpose:
Main branch: This is the live, production version of your workflow. It handles all active triggers, such as scheduled tasks, webhooks, and public routes. You can easily identify it by the "Live" green indicator.
Draft branches: These are your safe, experimental environments. You can create these to iterate on a workflow, test new features, or fix bugs without impacting the live version. Each draft branch maintains its own chat history and set of changes.
Special branches:
Autofix branches (orange): Automatically generated by Tines 3B when a workflow encounters an error, if enabled. Tines 3B will analyze the issue and attempt to suggest a fix.
Autotune branches (purple): Automatically generated when performance improvements are identified, offering suggestions to optimize your workflow.
How branches work
Isolation: Each branch is its own sandbox. Changes, test runs, and storage volumes in a draft branch remain invisible to the main branch until you decide to merge them.
Chat access: Isolation applies to your data and merges, not to what Tines 3B can reference when it helps you. A new draft starts with a blank chat, but when you ask for help, Tines 3B can still look at the live main branch. It can inspect the runs and step executions on your live version. It can also read the conversations that built earlier published versions.
Collaboration: You can collaborate with your team on the same draft branch. You can see real-time presence indicators to know who is currently working on the same version.
Testing: Draft branches do not run on automatic triggers (like cron schedules or webhooks), which prevents them from interfering with production. You can trigger runs manually or preview routes using a specific branch URL.
Renaming branches: You can rename any draft branch to better describe its purpose. The main branch cannot be renamed. Branch names must not be empty and cannot be named main.
Pushing live
When you push a draft branch live, Tines 3B runs a series of checks before the merge completes:
Step tests. If your workflow includes step tests, they run automatically against the latest draft version. The push waits for them to complete. If any fail, you can investigate the failures or proceed anyway.
Link access changes. If a link's access scope changed in your draft (for example, a route that was space-scoped is now public), Tines 3B shows you a list of the affected links and what changed. You can review the changes and confirm the push, or cancel and adjust the settings.
Volume data. If your draft created storage volumes that do not yet exist on live, you can choose to copy the draft's data into those volumes when the branch goes live, or start with empty storage. Volumes that already hold data on live are never overwritten.
Tidy up stale branches
Branches with no chats or runs in the last 7 days are considered stale. You can remove them in bulk.
Either, open the branch list for autofix or autotune or the versions dropdown (branch selector) inside a workflow. If you have stale branches, a brush icon appears.
Select the brush icon to see which branches will be deleted.
Note: If a branch is the workflow's only branch, deleting it also deletes the workflow.
This feature helps you clean up abandoned experiments and old fix branches without reviewing them one by one.
Important notes
Permissions: Your ability to create, edit, or push branches live depends on your workspace permissions (specifically, having write access in a space).
Merging logic: When pushing changes, Tines 3B automatically performs a "three-way merge" to compare your draft against the current live version, helping you resolve any potential conflicts before they go live.

