What Is Meant by "Short-Lived" and "Long-Lived" Branches in Git?

In git, there can be two types of branches; short-lived and long-lived:

  1. Short-lived branches are temporary branches that are created for a specific purpose, such as developing a new feature or fixing a bug;
  2. Long-lived branches exist for a longer time, such as for the duration of the project.

The following table shows a quick summary of the differences between the two:

Short-lived Branch Long-lived Branch
Purpose: Created for a specific feature or issue. Serves as the primary branch for the project.
Example: feature branches, bug-fix branches, etc. main branch, develop branch, etc.
Creation: Typically created from a long-lived branch. Typically created from a specific starting point, which is often the most stable and up-to-date version of the project's codebase.
Management: Can be created and merged by individual contributors. Typically managed by a project maintainer or team.
Duration: Short-lived and usually deleted once merged. Long-lived and rarely deleted.
Stability: May not always be in a stable state. Should always be in a stable state.
Updates: May have more frequent commits and pushes. Commits and pushes may be less frequent.

This post was published by Daniyal Hamid. Daniyal currently works as the Head of Engineering in Germany and has 20+ years of experience in software engineering, design and marketing. Please show your love and support by sharing this post.