Git Workflow Standards
Branch Stratejisi
main (production)
└── develop (integration)
├── feature/user-auth
├── bugfix/login-error
└── hotfix/critical-fix → main'e direkt
Branch Türleri
| Branch |
Pattern |
Base |
Merge To |
| main |
main |
- |
- |
| develop |
develop |
main |
main |
| feature |
feature/[name] |
develop |
develop |
| bugfix |
bugfix/[name] |
develop |
develop |
| hotfix |
hotfix/[name] |
main |
main + develop |
Branch İsimlendirme
# ✅ Doğru
feature/AUTH-123-user-registration
bugfix/ORD-456-calculation-error
hotfix/critical-auth-bypass
# ❌ Yanlış
Feature/UserAuth # büyük harf
user-registration # type yok
feature/my_feature # underscore
Commit Messages
<type>(<scope>): <description>
[body]
[footer]
| Type |
Kullanım |
| feat |
Yeni özellik |
| fix |
Bug fix |
| docs |
Dokümantasyon |
| refactor |
Refactoring |
| test |
Test |
| chore |
Build, config |
Örnekler
feat(auth): add password reset flow
- Add forgot password endpoint
- Add email service integration
Closes #123
Workflow
Feature Development
# 1. Develop'dan başla
git checkout develop
git pull origin develop
# 2. Feature branch
git checkout -b feature/AUTH-123-user-registration
# 3. Çalış, commit (sık, küçük)
git add .
git commit -m "feat(auth): add registration form"
# 4. Push
git push -u origin feature/AUTH-123-user-registration
# 5. PR oluştur
Hotfix
git checkout main
git pull origin main
git checkout -b hotfix/critical-auth-bypass
# fix & commit
git push -u origin hotfix/critical-auth-bypass
# PR → main, sonra main'i develop'a merge
PR Guidelines
## Summary
[Kısa açıklama]
## Changes
- Change 1
- Change 2
## Testing
- [ ] Unit tests
- [ ] Manual testing
PR Kuralları
- ✅ Küçük, focused (max 400 satır)
- ✅ Tek iş per PR
- ✅ CI checks geçmeli
- ❌ WIP merge etme
Merge Stratejisi
Squash and Merge (tercih)
- Feature branch → tek clean commit
- Clean history
Sık Kullanılan
git checkout -b feature/name # Yeni branch
git branch -d feature/name # Sil (merged)
git stash # Sakla
git stash pop # Geri al
git reset HEAD~1 # Son commit'i geri al