Branching
Branching Model and Commit Messages¶
We use the GitFlow branching model.
GitFlow is a branching model for Git that defines a structured way of working with repositories. It's commonly used in larger projects due to its clear organization. Here's a simplified explanation:
- Master Branch: This is the "production-ready" branch. Code here is deployable.
- Develop Branch: This is the branch where all the development happens. It's also known as the "integration branch", as it's where new features are integrated.
- Feature Branches: Developers create these branches when they start work on a new feature. Once the feature is complete, it is merged back into the develop branch, not directly into master.
- Release Branches: These branches are created off of the develop branch when it's time to prepare for a new production release. They are used for last-minute cleanup and minor bug fixes. When the release is ready, it gets merged into master and develop.
- Hotfix Branches: These branches are created from the master branch if you need to make an immediate correction in production.
This model ensures a clean project history and helps in managing multiple features and releases.
For detailed information, please refer to this link.
Before commit:
- To connect code changes with issues, make sure to you include the issue number in your commit messages.
After commit:
- We use Pull Request to allow other team members review the code.