SmartGit Branching

Feature Flow, Git-Flow & GitHub Flow

SmartGit 'Feature Flow' Integrate | safeHTML }}

The Standard Window in SmartGit includes Feature Flow – a unique workflow designed for guided feature development. It covers all stages: from starting a feature, integrating upstream changes, to finishing via merge, rebase, or squash.

Feature Flow supports multiple main branches and scales well from solo developers to larger teams. With built-in safeguards, it is especially valuable for environments with varying Git experience.

Learn more 

SmartGit’s Feature Flow

Feature Flow is a guided Git workflow built into SmartGit to help you:

  • Start new features based on main or a release branch (according to configuration)
  • Keep your feature branches up to date by easy rebasing
  • Supports “side-loop” finishing merge for keeping related commits visually together
  • You are responsible for your feature branch and all possible rebase conflicts until you finish

That’s why you should use Feature Flow:

  • Avoid Spaghetti Merges: Rebasing keeps your history linear and avoids inflexible merge commits
  • Safe by Default: SmartGit blocks destructive operations and prompts you with confirmations and guidance (as shown in the screenshot)
  • Visual Clarity: See your changes in context via SmartGit’s integrated history and diff views
  • Push Only When Ready: Integrated steps ensure you don’t push incomplete or conflicting code
Learn more 

Integrate and Finish

SmartGit 'Feature Flow' FInish | safeHTML }}

Integrate and Finish are the powerhouses of Feature Flow.

They go beyond Git-Flow by handling more edge cases, supporting selective fetching and pushing, and safely resolving even complex diverged scenarios.

Integrate guides you step by step with clear visual support for full control.

Finish is atomic – your feature commit is either fully applied to main or the process is stopped. No untested main changes are pulled in, and no partial set of commits is pushed.

Learn more 

Git-Flow – Structured Workflow for Multi-Release Projects

Git-Flow (Full) Configuration | safeHTML }}

SmartGit supports the classic Git-Flow model for teams managing multiple active releases, to automate the process of:

  • Starting and finishing features, releases, and hotfixes
  • Merging back into develop and main
  • Keeping release cycles predictable and consistent

SmartGit’s implementations is based on the popular AVH Edition and comes with a couple of optional improvements.

Learn more 

Git-Flow Light – Simplified Git-Flow for Single Releases

Git-Flow Light Configuration | safeHTML }}

Git‑Flow Light is a leaner version tailored for single-release workflows:

  • Only a single long‑lived trunk: develop (or main)
  • feature-branches for new work; finished by merging back
  • No separate release, hotfix, or support branches

Best suited for agile teams deploying continuously or working on web-based projects.

Learn more 
Illustration of Smart Gitty, the SmartGit mascot -- a grey cartoon cat with glasses, sitting behind a laptop