To ensure visibility of developer work even before commits, branches should be properly linked to work items.
In Azure DevOps Web Interface:
dev)Result: Branch is automatically linked and visible in work item's "Development" section.
When creating branches manually, use work item ID in branch name:
git checkout dev
git pull origin dev
git checkout -b feature/AB#12345-user-authentication
git push -u origin feature/AB#12345-user-authenticationAzure DevOps will automatically detect and link the branch based on the AB#12345 reference.
If auto-linking doesn't work:
We'll use a Modified Git Flow approach optimized for your environment pipeline:
main - Production-ready code (maps to prod environment)release/* - Release candidates (maps to preprod environment)dev - Integration branch (maps to dev environment)feature/* - New features and user storiesbugfix/* - Bug fixes during developmenthotfix/* - Critical production fixestask/* - Technical tasks and improvementstype/workitem-descriptionfeature/AB#12345-user-authentication
feature/AB#12346-payment-integrationbugfix/AB#12347-login-validation-error
bugfix/AB#12348-dashboard-loading-issuetask/AB#12349-update-dependencies
task/AB#12350-refactor-user-servicehotfix/AB#12351-critical-security-patch
hotfix/AB#12352-payment-gateway-fixrelease/v1.2.0
release/v1.2.1# Update dev branch
git checkout dev
git pull origin dev
# Create feature branch
git checkout -b feature/AB#12345-user-authentication
# Link branch to work item in Azure DevOps (automatic with naming convention)# Regular commits with clear messages
git add .
git commit -m "AB#12345: Implement user login validation"
# Push to remote regularly
git push -u origin feature/AB#12345-user-authentication# Ensure branch is up to date
git checkout dev
git pull origin dev
git checkout feature/AB#12345-user-authentication
git rebase dev
# Push final changes
git push origin feature/AB#12345-user-authentication
# Create Pull Request in Azure DevOpsAB#[WorkItemID]: [Type] [Short description]
[Optional detailed description]
Examples:
AB#12345: feat: Add user authentication endpoint
AB#12346: fix: Resolve null pointer exception in payment service
AB#12347: refactor: Extract user validation logic
AB#12348: docs: Update API documentationAB#[WorkItemID]: [Brief description] ## Work Item
- Links to: AB#[WorkItemID]
## Summary
Brief description of changes
## Changes Made
- List key changes
- Include any breaking changes
## Testing
- [ ] Unit tests updated/added
- [ ] Integration tests pass
- [ ] Manual testing completed
## Screenshots/Evidence
(If applicable)
## Checklist
- [ ] Code follows team standards
- [ ] Documentation updated
- [ ] No merge conflicts
- [ ] Ready for reviewdevmain (with immediate cherry-pick to dev)main# After completing work (typically 4-5 days)
git add .
git commit -m "AB#12345: Complete user authentication feature"
git push origin feature/AB#12345-user-authenticationfeature/AB#12345-user-authentication) → target (dev)Possible reviewer responses:
Example timeline:
dev branchDeveloper creates PR → Automated checks pass → Reviewer approves → Merge allowed → Code integrated to devBranch Protection in Action:
main/devExample error when trying to bypass:
git push origin dev
# Error: Branch dev is protected and requires a pull requestmain Branchdev Branchrelease/* Branchesmain branch → prod environment
release/* → preprod environment
dev branch → dev environmentdeveloper → feature branch → dev → QA environment → release branch → preprod environment → main → prod environmentdevrelease/* branch creationmain git checkout main
git pull origin main
git checkout -b hotfix/AB#12345-critical-payment-fixmain with expedited review git checkout dev
git cherry-pick <hotfix-commit-hash>For critical outages, tech lead can approve hotfix with single reviewer and deploy immediately, with post-deployment review required.
# When ready for release
git checkout dev
git pull origin dev
git checkout -b release/v1.2.0
# Update changelogs, configuration files
git commit -m "Prepare release v1.2.0"
git push origin release/v1.2.0dev before starting work