99 lines
2.9 KiB
Markdown
Executable File
99 lines
2.9 KiB
Markdown
Executable File
### GitHub Branching Name Best Practices
|
||
|
||
On GitHub, branching is a crucial component of collaborative software development. In addition to keeping your project
|
||
organized, using consistent and unambiguous branch naming conventions makes it easier for team members to quickly
|
||
comprehend each branch's purpose. Some best practices for naming branches in your GitHub projects are listed below.
|
||
|
||
1. Use Prefixes to Indicate Purpose
|
||
Prefixing branch names based on their purpose helps categorize and identify them quickly. Here are some common
|
||
prefixes:
|
||
|
||
feature/: For new features or functionalities.
|
||
|
||
bugfix/: For fixing bugs in the code.
|
||
|
||
hotfix/: For urgent patches, usually applied to production.
|
||
|
||
design/: For user interface or user experience updates.
|
||
|
||
refactor/: For improving code structure without changing functionality.
|
||
|
||
test/: For writing or improving automated tests.
|
||
|
||
doc/: For documentation updates.
|
||
|
||
### Example Prefix Usage
|
||
|
||
feature/user-authentication
|
||
|
||
bugfix/fix-login-error
|
||
|
||
hotfix/urgent-patch-crash
|
||
|
||
design/update-navbar
|
||
|
||
refactor/remove-unused-code
|
||
|
||
test/add-unit-tests
|
||
|
||
doc/update-readme
|
||
|
||
2. Keep Names Short and Descriptive
|
||
Branch names should be concise yet informative. A good branch name briefly describes what it is for without being
|
||
overly long or vague. Here are some tips:
|
||
|
||
Use hyphens (-) to separate words for better readability.
|
||
|
||
Avoid generic terms like update, changes, or stuff.
|
||
|
||
Focus on the primary task or issue the branch addresses.
|
||
|
||
### Examples of Clear Branch Names
|
||
|
||
'''
|
||
Feature Branches
|
||
feature/add-user-profile
|
||
feature/implement-chat-notifications
|
||
Bug Fixes
|
||
bugfix/correct-date-display
|
||
bugfix/fix-404-error
|
||
Design Updates
|
||
design/improve-dashboard-ui
|
||
design/revise-mobile-layout
|
||
Refactoring
|
||
refactor/optimize-database-queries
|
||
refactor/simplify-api-routes
|
||
Hotfixes
|
||
hotfix/security-patch
|
||
hotfix/fix-login-issue
|
||
Documentation
|
||
doc/add-api-instructions
|
||
doc/update-contributor-guidelines
|
||
'''
|
||
|
||
3. Incorporate Ticket Numbers or Identifiers
|
||
For teams using project management tools like Jira or Trello, include the ticket number or issue ID in the branch
|
||
name. This links the branch to its corresponding task, making it easier to track progress.
|
||
|
||
## Examples with Ticket Numbers
|
||
|
||
feature/JIRA-1234-add-login
|
||
|
||
bugfix/TICKET-567-resolve-crash
|
||
|
||
hotfix/ISSUE-890-fix-api
|
||
|
||
4. Collaborate on a Branch Naming Strategy
|
||
Every team is different, so it’s crucial to agree on a branching strategy that works for everyone. Document the
|
||
naming conventions in your project’s contribution guidelines or README file so that new contributors can easily
|
||
follow them.
|
||
|
||
### Benefits of Consistent Branch Naming
|
||
|
||
Improved Collaboration: Team members can quickly understand the purpose of a branch without needing extra context.
|
||
|
||
Easier Navigation: Searching for specific branches becomes straightforward.
|
||
|
||
Better Automation: Many CI/CD tools can leverage structured branch names for workflows (e.g., deploying hotfix/ branches
|
||
automatically to production).
|