Gitflow
Instantly configure the popular Gitflow branch structure:
- "main" (or "master") as the "Trunk"
- "develop" as the "Base"
- "feature", "release", and "hotfix" branches
Start and finish new features, releases, or critical hotfixes with a predictable workflow. Tower ensures your branches stay in sync and proactively warns you of merge conflicts.
Define your preferred merge strategies and automatically create tags when a workflow is complete.
Take absolute control over your Gitflow implementation with Tower Workflows!


Tower Workflows with Gitflow
Getting up and running is simple!

Step 1: Choose a Gitflow Preset
Tower Workflows supports the following Gitflow presets:
- Tower's default git-flow preset.
- The classic git-flow with the CLI tool.
- The more modern git-flow-next fork.
Step 2: Customize it!
Start with a Gitflow preset, then tailor everything to your team's exact needs.
Tower Workflows lets you fine-tune every aspect of your branching process:
- Add and remove Base and Topic branches.
- Keep branches updated by defining their parent.
- Define upstream/downstream merge strategies.
- Enable or disable merge commit creation.
- Enable or disable tag creation when integrating changes.


Step 3: Begin and Finalize Your Task
To begin, click the "Start..." option. This instantly creates and checks out a dedicated feature branch for your work.
When complete, click "Finish..." to integrate your changes. Upon a successful merge (e.g., into "develop"), your local branch will be automatically deleted.
Keeping Branches in Sync
With the parent branch set up, Tower can easily notify you whenever it's time to update your topic branch and inform you if any merge conflicts will occur during the process.
What is Gitflow?
Gitflow is a rigid, release-based branching model that uses two long-lived main branches: main (for production-ready code) and develop (for integrating new features). Development occurs on feature branches off of develop. When a release is planned, a release branch is created from develop for final testing and bug fixes. Urgent fixes to the production code are made on dedicated hotfix branches off of main. This structure is ideal for projects with scheduled, versioned releases.
Why use Gitflow?
- Supports Parallel Development: The dedicated develop branch ensures that ongoing feature work is completely isolated from the stable, production-ready code in main.
- Clear Release Cycle: It provides a highly structured process for creating, managing, and finalizing major versioned releases using distinct release branches.
- Dedicated Hotfix Channel: The separate hotfix branches allow urgent production bugs to be addressed and deployed immediately without disrupting the in-progress feature development on the develop branch.