İyi bir code review nasıl yapılır? .gitignore'a neler eklenmelidir?

Cevap

Code review'da neye bakılır?

  1. Doğruluk: kod gereksinimi karşılıyor mu, uç durumlar (boş liste, null, eşzamanlılık) düşünülmüş mü?
  2. Güvenlik: yetki kontrolü, girdi doğrulama, sırların koda girmemesi.
  3. Test: yeni davranış test edilmiş mi, testler anlamlı mı?
  4. Okunabilirlik ve tasarım: isimlendirme, gereksiz karmaşıklık, tekrar.
  5. Performans: N+1 sorgu, gereksiz döngü veya render.

İyi review kültürü

  • PR'lar küçük olmalı (birkaç yüz satır); büyük PR'lar yüzeysel incelenir.
  • Açıklamada neyin, neden değiştiği ve nasıl test edileceği yazılmalı.
  • Yorumlar kişiye değil koda yönelik ve gerekçeli olmalı: "Bu null gelebilir mi? Gelirse X olur" gibi.
  • Zorunlu düzeltme ile öneriyi ayırın (ör. nit: öneki).
  • Biçim tartışmaları insanlara değil linter/formatter'a bırakılmalı.

.gitignore'a neler eklenir?

# Bağımlılıklar ve build çıktıları
node_modules/
dist/
build/
.next/
__pycache__/

# Ortam ve sırlar
.env
.env.local
*.pem

# Editör / işletim sistemi
.vscode/
.idea/
.DS_Store

# Log ve geçici dosyalar
*.log
coverage/

Kilit dosyaları (package-lock.json, pnpm-lock.yaml) eklenmez, commit'lenir. .gitignore zaten takip edilen dosyayı etkilemez; yanlışlıkla commit'lenen dosya için git rm --cached dosya gerekir. Commit'lenmiş bir sır geçmişte kalır, mutlaka iptal edilip yenilenmelidir.

  1. git merge ile git rebase arasındaki fark nedir?OrtaGitFull Stack
  2. git reset ile git revert arasındaki fark nedir?OrtaGitFull Stack
  3. Interactive rebase ile commit'leri nasıl düzenler ve squash edersiniz?ZorGitFull Stack
  4. git cherry-pick ve git stash ne işe yarar? Hangi durumlarda kullanılır?OrtaGitFull Stack
  5. Merge conflict nedir ve nasıl çözülür?KolayGitFull Stack
  6. GitFlow ile trunk-based development arasındaki fark nedir?OrtaGitFull Stack

Bu konuda başka bir soru biliyor musun?

Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.

Soru ekle