Use when adding new error messages to React, or seeing "unknown error code" warnings.
npx skills add vuralserhat86/antigravity-agentic-skills --skill "git_workflow"
Install specific skill from multi-skill repository
# Description
Branch stratejisi, commit conventions, merge conflict çözümü ve Git best practices rehberi.
# SKILL.md
name: git_workflow
router_kit: FullStackKit
description: Branch stratejisi, commit conventions, merge conflict çözümü ve Git best practices rehberi.
metadata:
skillport:
category: development
tags: [architecture, automation, best practices, clean code, coding, collaboration, compliance, debugging, design patterns, development, documentation, efficiency, git, git workflow, optimization, productivity, programming, project management, quality assurance, refactoring, software engineering, standards, testing, utilities, version control, workflow] - workflow
🌿 Git Workflow
Branch stratejisi, commit conventions ve Git best practices rehberi.
📋 İçindekiler
1. Branching Stratejileri
Git Flow
main (production)
└── develop
├── feature/user-auth
├── feature/payment
└── release/v1.2.0
└── hotfix/critical-bug
GitHub Flow (Önerilen - Basit)
main (always deployable)
├── feature/add-login
├── fix/button-style
└── chore/update-deps
Branch Naming
# Feature
feature/user-authentication
feature/JIRA-123-add-payment
# Bug Fix
fix/login-redirect-issue
bugfix/memory-leak
# Hotfix (production)
hotfix/critical-security-patch
# Other
chore/update-dependencies
refactor/auth-module
docs/api-documentation
2. Commit Conventions
Conventional Commits
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
Types
| Type | Açıklama |
|---|---|
feat |
Yeni özellik |
fix |
Bug düzeltme |
docs |
Dokümantasyon |
style |
Formatting (kod değişikliği yok) |
refactor |
Refactoring |
perf |
Performans iyileştirme |
test |
Test ekleme/düzeltme |
chore |
Build, CI, dependencies |
ci |
CI configuration |
revert |
Revert commit |
Örnekler
feat(auth): add OAuth2 login support
fix(api): resolve null pointer in user endpoint
Closes #123
refactor!: drop support for Node 14
BREAKING CHANGE: Minimum Node version is now 18
chore(deps): update lodash to 4.17.21
Commit Message Rules
✅ DOĞRU:
- Imperative mood: "Add feature" (not "Added" or "Adds")
- 50 karakter başlık limiti
- Büyük harfle başla, nokta koyma
- Açıklayıcı body (neden, nasıl)
❌ YANLIŞ:
- "Fixed stuff"
- "WIP"
- "asdfasdf"
- "Updated code"
3. Merge vs Rebase
Merge
# Feature branch'i main'e merge
git checkout main
git merge feature/user-auth
# Merge commit oluşturur
# History korunur
Rebase
# Feature branch'i main üzerine rebase
git checkout feature/user-auth
git rebase main
# Linear history
# Commit'ler yeniden yazılır
Ne Zaman Hangisi?
| Durum | Strateji |
|---|---|
| Public/shared branch | Merge |
| Local feature branch | Rebase |
| Main'e feature merge | Squash merge |
| Hotfix | Merge |
Squash Merge
git checkout main
git merge --squash feature/user-auth
git commit -m "feat(auth): add user authentication"
4. Conflict Resolution
Conflict Markers
<<<<<<< HEAD
Current branch content
=======
Incoming branch content
>>>>>>> feature-branch
Resolution Steps
# 1. Conflict'leri gör
git status
# 2. Dosyaları düzenle (markers kaldır)
# 3. Çözümlenmiş dosyaları stage
git add <resolved-file>
# 4. Merge/rebase devam
git merge --continue
# veya
git rebase --continue
VS Code ile
# Accept Current Change
# Accept Incoming Change
# Accept Both Changes
# Compare Changes
Abort
git merge --abort
git rebase --abort
5. Useful Commands
History
# Güzel log
git log --oneline --graph --all
# Son 10 commit
git log -10 --oneline
# Dosya history
git log --follow -p -- path/to/file
Undo
# Son commit'i geri al (değişiklikleri koru)
git reset --soft HEAD~1
# Son commit'i tamamen geri al
git reset --hard HEAD~1
# Commit'i revert et (yeni commit oluştur)
git revert <commit-hash>
# Staged dosyayı unstage
git restore --staged <file>
# Değişiklikleri geri al
git restore <file>
Stash
# Değişiklikleri sakla
git stash
# Mesajla sakla
git stash push -m "WIP: feature X"
# Stash listesi
git stash list
# Son stash'i uygula
git stash pop
# Belirli stash'i uygula
git stash apply stash@{2}
Interactive Rebase
# Son 3 commit'i düzenle
git rebase -i HEAD~3
# Açılan editörde:
pick abc1234 First commit
squash def5678 Second commit # Öncekiyle birleştir
reword ghi9012 Third commit # Mesajı değiştir
Cherry Pick
# Belirli commit'i al
git cherry-pick <commit-hash>
# Birden fazla
git cherry-pick <hash1> <hash2>
Git Workflow v1.1 - Enhanced
🔄 Workflow
Aşama 1: Branching
- [ ] Strategy: Çoğu ekip için "Trunk Based Development" (kısa ömürlü feature branch'ler) kullan.
- [ ] Naming:
feat/fix/ön eklerini standartlaştır. - [ ] Lifetime: Branch ömrü 2 günü geçmemeli. Geçiyorsa parçala.
Aşama 2: Committing
- [ ] Atomic: Bir commit sadece bir şeyi değiştirmeli.
- [ ] Message:
feat(auth): add loginformatını (Conventional Commits) zorunlu tut. - [ ] Verification:
pre-commithook ile linter/test çalıştır.
Aşama 3: Merging
- [ ] Review: Code Owner onayı olmadan merge etme.
- [ ] Method: Geçmişi temiz tutmak için
Squash Mergetercih et. - [ ] Cleanup: Merge sonrası branch'i sil.
Kontrol Noktaları
| Aşama | Doğrulama |
|---|---|
| 1 | Main branch her an deploy edilebilir (Green) durumda mı? |
| 2 | git log --oneline okunduğunda bir hikaye anlatıyor mu? |
| 3 | Conflict çözülürken kod kaybı yaşanma riski var mı? |
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.