# nvie/gitflow

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/nvie-gitflow).**

26,825 stars · 2,628 forks · Shell · NOASSERTION · archived

## Links

- GitHub: https://github.com/nvie/gitflow
- Homepage: http://nvie.com/posts/a-successful-git-branching-model/
- awesome-repositories: https://awesome-repositories.com/repository/nvie-gitflow.md

## Description

Gitflow is a Git branching model extension and workflow automation tool. It provides a set of command line tools and automated scripts to manage feature development, release cycles, and hotfixes using standard Git operations.

The project coordinates software releases and versioning through the management of dedicated release and support branches. It automates the creation and merging of branches to maintain a structured development cycle and manage the transition of code from development to production.

The tool covers the full lifecycle of several branch types, including the isolation of new development via feature branches and the implementation of urgent production fixes through hotfix branches. It also includes utilities for preparing software versions through release branches and maintaining older software versions via support branches.

## Tags

### Software Engineering & Architecture

- [Branching Model Automations](https://awesome-repositories.com/f/software-engineering-architecture/development-methodologies/engineering-best-practices/development-process-methodologies/development-workflows/branching-model-managers/sandbox-branch-managers/branching-model-automations.md) — Automates the creation and merging of feature, release, and hotfix branches to maintain a structured development cycle.
- [Branching Model Managers](https://awesome-repositories.com/f/software-engineering-architecture/development-methodologies/engineering-best-practices/development-process-methodologies/development-workflows/branching-model-managers.md) — Automates and enforces structured branching strategies like Git Flow through a set of command line tools.
- [Feature Branch Lifecycles](https://awesome-repositories.com/f/software-engineering-architecture/development-methodologies/engineering-best-practices/development-process-methodologies/development-workflows/branching-model-managers/sandbox-branch-managers/feature-branch-lifecycles.md) — Automates the creation, tracking, publishing, and merging of dedicated feature branches to isolate new development. ([source](https://github.com/nvie/gitflow#readme))
- [Release Branching Strategies](https://awesome-repositories.com/f/software-engineering-architecture/development-methodologies/software-development-lifecycle/release-branching-strategies.md) — Automates the creation, tracking, and finishing of release branches to coordinate software versioning and deployment. ([source](https://github.com/nvie/gitflow#readme))
- [Branching Model Orchestration](https://awesome-repositories.com/f/software-engineering-architecture/development-methodologies/software-development-lifecycle/release-branching-strategies/branching-model-orchestration.md) — Implements high-level repository operations to manage structured branching models for development, releases, and hotfixes. ([source](https://github.com/nvie/gitflow/blob/develop/gitflow-common))

### Development Tools & Productivity

- [Git Command Line Extensions](https://awesome-repositories.com/f/development-tools-productivity/command-line-interfaces/application-extensions/git-command-line-extensions.md) — Provides custom command-line extensions to the Git binary to abstract multi-step repository operations.
- [Git Tooling](https://awesome-repositories.com/f/development-tools-productivity/git-tooling.md) — Provides specialized tooling for implementing urgent production hotfixes through managed branching and merging.
- [Release Management](https://awesome-repositories.com/f/development-tools-productivity/release-management.md) — Coordinates the transition of code from development to production through dedicated release branches and versioning.
- [Git Workflow Automation](https://awesome-repositories.com/f/development-tools-productivity/version-control-repository-tools/version-control-managers/git-workflow-automation.md) — Provides automated scripts for managing feature development, release cycles, and hotfixes using standard Git operations.
- [Branch Naming Conventions](https://awesome-repositories.com/f/development-tools-productivity/development-workflow/environment-branching-patterns/branch-naming-conventions.md) — Enforces strict prefixing for branches to distinguish between features, releases, hotfixes, and support lines.
- [VCS Repository Initializers](https://awesome-repositories.com/f/development-tools-productivity/vcs-repository-initializers.md) — Sets up repositories with specific branch configurations and naming conventions required for structured branching.
- [Workflow Orchestrators](https://awesome-repositories.com/f/development-tools-productivity/workflow-orchestrators.md) — Orchestrates the transition of code between development, release, and production branches through predefined steps.

### DevOps & Infrastructure

- [Git Release Automators](https://awesome-repositories.com/f/devops-infrastructure/release-automation/git-release-automators.md) — Automates the staging, committing, and tagging of release and support changes in Git.
- [Hotfix Branch Lifecycles](https://awesome-repositories.com/f/devops-infrastructure/version-control-management/version-control-utilities/branch-management-utilities/hotfix-branch-lifecycles.md) — Integrates urgent production fixes by branching from the master line and merging back to both production and development. ([source](https://github.com/nvie/gitflow#readme))
- [Support Branch Lifecycles](https://awesome-repositories.com/f/devops-infrastructure/version-control-management/version-control-utilities/branch-management-utilities/support-branch-lifecycles.md) — Provides specialized branches to maintain older versions of a project while continuing development on the main line. ([source](https://github.com/nvie/gitflow#readme))

### Part of an Awesome List

- [Version Support Branching](https://awesome-repositories.com/f/awesome-lists/devtools/git-and-version-control-tools/version-support-branching.md) — Creates and manages specialized support branches to provide updates for older software versions.
- [Project Management](https://awesome-repositories.com/f/awesome-lists/productivity/project-management.md) — Facilitates parallel development through branch isolation.
