Bu döküman, projenin sürdürülebilirliği, kod geçmişinin okunabilirliği ve ekip içi senkronizasyonun en üst düzeyde tutulması amacıyla hazırlanmıştır.
Commit mesajları, projenin tarihçesidir. İyi bir mesaj, kodun ne yaptığından ziyade neden yapıldığını ve neyi etkilediğini anlatır. Takım içinde Conventional Commits yapısını kullanıyoruz.
<tip>(<isteğe bağlı kapsam>): <kısa açıklama>
feat: login sayfasına recaptcha ekle)Kaosun önüne geçmek için Git Flow benzeri bir yapı kullanıyoruz. Herkesin doğrudan main branch’ine basması kesinlikle yasaktır.
görev-adı: Yeni özellikler için develop üzerinden açılır. İş bitince develop‘a döner.
feature/user-authhata-adı: develop üzerindeki hataları düzeltmek için.acil-hata: Canlıdaki (main) kritik hataları anında düzeltmek için main üzerinden açılır.v1.1.0: Yayına hazırlık sürecinde sürüm notları ve son testler için.Kodun kalitesini koruyan en önemli filtre PR aşamasıdır.
console.log veya “todo” notlarını temizleyin.develop dalını kendi dalınıza rebase veya merge yapın.PR açarken şu şablonu takip edin:
stash)Henüz commit atmaya hazır değilsiniz ama acilen başka bir dalda hata düzeltmeniz gerekiyor:
git stash # Değişiklikleri geçici olarak kaldır ve sakla
git stash pop # Geri geldiğinde kaldığın yerden devam et
amend)Commit attınız ama küçük bir yazım hatası fark ettiniz veya bir dosyayı eklemeyi unuttunuz:
git add .
git commit --amend --no-edit # Eski commit'i günceller, yeni commit oluşturmaz
Terminalden ağaç yapısını görmek için:
git log --oneline --graph --all
Eğer yanlış branch’e commit attıysanız, cherry-pick ile o commit’i doğru branch’e “cımbızla” çekebilirsiniz:
git checkout doğru-branch
git cherry-pick <hatalı-commit-hash>
Not: “Kod çalışıyorsa dokunma” değil, “Kod temizse pushla” prensibiyle ilerliyoruz. İyi geliştirmeler!