# Git Workflow

> Git branching ve workflow standartları. GIT işlemleri yaparken uygula.

- Skill: `erhankaraarslan/git-workflow` (Agent Skill)
- Install (CLI): `npx skillmds@latest add erhankaraarslan/git-workflow`
- Raw SKILL.md: https://api.skillmd.com/api/skills/erhankaraarslan/git-workflow/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: erhankaraarslan (https://skillmd.com/u/erhankaraarslan)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/erhankaraarslan/git-workflow

---


# 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

```bash
# ✅ 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

```bash
feat(auth): add password reset flow

- Add forgot password endpoint
- Add email service integration

Closes #123
```

## Workflow

### Feature Development

```bash
# 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

```bash
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

```markdown
## 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

```bash
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
```

