Skip to content

Latest commit

 

History

History
79 lines (65 loc) · 3.2 KB

BRANCH_MANAGEMENT.md

File metadata and controls

79 lines (65 loc) · 3.2 KB

Branch Management Guidelines

- `main`
  - `doc`
  - `release`
    - `feature/<feature-name>`
    - `feature/<feature-name>`
      - `feature/<feature-name>-<developer-name>`
    - `feature/<feature-name>`
  - `test/<test-name>`

1. Branch Structure Overview

  • Main Branch (main)
    • Represents the stable version of the project.
    • Code must undergo a pull request (PR) and pass code reviews.
    • Only merges from:
      • release
      • doc
  • Documentation Branch (doc)
    • Used exclusively for documentation.
    • Cannot merge from any other branches.
  • Release Branch (release)
    • Contains stable code ready for delivery.
    • Code must undergo a pull request (PR) and pass code reviews.
    • Only merges from feature/* branches.
  • Feature Branches (feature/*)
    • Used for specific feature development.
    • Developers pull the latest code from main or release as needed.
    • Can be organized as:
      • feature/<feature-name>
      • feature/<feature-name>-<developer-name>
    • Periodically merges into release.
  • Test Branches (test/*)
    • Used for testing specific aspects of the project.
    • Should not merge into any other branch but can receive merges.

protected branches: main, release

2. Best Practices

Tool Recommendations

  • GitHub Desktop: Preferred for beginners due to its user-friendly guidance.
  • VSCode: Use the GitLens plugin for enhanced Git experience.
  • SourceTree: An alternative option for managing Git operations.

Code Review:

Mandatory before merging into protected branches.

Regular Updates

Frequently pull from the main or release branch to stay up-to-date.