What is a feature branch?
A feature branch in Git is a temporary working branch intended for developing a single specific piece of functionality (a feature) isolated from the project's main branch.
Main idea
A feature branch lets you develop a new capability without the risk of breaking the main branch and without conflicts with the parallel work of other developers.
How and from where it is created
- usually created from the main branch (
main); - contains only changes related to a single task;
- lives until the feature is finished.
Why it is needed
1. Isolation of changes
In a feature branch:
- you can experiment freely;
- bugs and unfinished code do not reach the stable version;
- the main branch stays clean and working.
2. Parallel development
- each task is a separate branch;
- several features can be developed at the same time;
- the number of conflicts is reduced.
3. Convenience of review and testing
- changes for a single feature are easy to review;
- it is easier to understand what exactly the feature adds;
- convenient for running checks and tests.
What happens next
- after development is finished, the feature branch is:
- merged into the main branch (merge or rebase),
- or deleted, if the feature is cancelled;
- after merging, the branch is usually no longer needed.
Naming (a commonly used approach)
feature/authfeature/paymentfeature/add-search- sometimes with a task number:
feature/123-user-profile
Short definition
A feature branch is a separate branch for developing a single piece of functionality, created from the main branch and deleted after it is merged.
Short Answer
Interview readyPremium
A concise answer to help you respond confidently on this topic during an interview.