GitHub Copilot ile Pull Request İnceleme ve Code Review
Geçen hafta bir müşterimizin DevOps ekibiyle toplantıdaydık — finans sektöründe çalışan, 40+ geliştiricili bir ekip. Bir noktada ekip lideri şöyle dedi: “Bizde PR review bottleneck öldü, herkes birbirini bekliyor.” Ben de araya girdim, “Copilot Chat’in yeni PR yeteneklerini denediniz mi?” dedim. Cevap? Boş bakışlar. Tam da o an anladım, bu yazı lazım.
📋 İçindekiler
-
Şimdi gelelim işin can alıcı noktasına.
Evet.
Türkiye’deki Ekipler İçin Gerçekçi Bir Değerlendirme
İtiraf edeyim, Türkiye tarafına bakınca iş biraz değişiyor. Kurumsal müşterilerde gördüğüm tablo bu, açık konuşayım; GitHub Copilot adoption’ı hâlâ beklediğim seviyede değil,. Ekipler önce bütçeye bakıyor, sonra güvenliğe takılıyor, en son da “bunu biz gerçekten kullanır mıyız?” diye düşünüyor.
Birincisi maliyet. GitHub Copilot Business lisansı kişi başı aylık $19. 40 kişilik bir ekipte bu rakam ayda $760 ediyor, yılda da $9,120 yapıyor; TL bazında düşününce (güncel kurla yaklaşık 350.000 TL/yıl) bazı orta ölçekli şirketler için baya can sıkıcı bir kalem oluyor. Kısacası, ama dur bir saniye — eğer bu araç her geliştiriciye günde 30 dakika kazandırıyorsa (benim sahada gördüğüm kabaca bu civarda), hesap bir anda tersine dönüyor.
Senaryo Ekip Büyüklüğü Aylık Maliyet (USD) Tahmini Günlük Tasarruf ROI Değerlendirmesi Küçük Startup 5-10 kişi $95-190 15-20 dk/kişi Orta — bireysel plandan başlayın Orta Ölçekli 20-50 kişi $380-950 25-35 dk/kişi Yüksek — PR review hızlanması belirgin Enterprise 100+ kişi $1,900+ 30-45 dk/kişi Çok yüksek — compliance review için şart Peki neden herkes hemen geçmiyor? İkincisi veri güvenliği endişeleri. Bankacılık. Savunma tarafındaki müşteriler bana direkt şunu soruyor: “Kodumuz GitHub’ın sunucularına mı gidiyor?” İşin aslı şu; GitHub Copilot Business’ta kodunuz eğitim verisi olarak kullanılmıyor, bunu net bilmek lazım. Ama yine de bazı kurumlar GitHub Enterprise Server (on-premise) kullanıyor. Doğal olarak Copilot Chat’in burada çalışıp çalışmadığını sorguluyor; şu an için cloud-hosted GitHub gerekiyor.
Peki neden?
Üçüncüsü de beni biraz üzen kısım: Türkçe yorumlar ve commit mesajları. Ekiplerin bir bölümü hâlâ Türkçe commit atıyor, evet böyle ekipler var. Copilot Türkçe bağlamı bazen idare eder seviyede anlıyor ama domain’e özel ifadelerde tökezleyebiliyor; mesela “Fatura hesaplama düzeltildi” gibi şeyleri çözüyor ama “cari bakiye tutar düzeltmesi yapıldı” deyince yüzü düşüyor gibi oluyor. Nasıl desem, burada tavsiyem net: commit mesajlarını İngilizce yazın. Tartışmasız.
Tam da öyle.
Enterprise vs Startup: Kime Ne Kadar Faydalı?
Bilmem anlatabiliyor muyum, Küçük bir startup ekibiyseniz, hani 5-8 geliştirici falan varsa, PR review zaten hızlı akıyor. Çünkü herkes herkesi biliyor, kodun kokusu daha commit aşamasında geliyor, işte böyle bir ortamda Copilot Chat’in PR summary özelliği “güzel ama şart değil” tarafında kalıyor. Ama review kısmı? O fena değil. Bilhassa junior geliştiricilerin PR’larını senior’a gitmeden önce Copilot’a bir kez baktırmak, açık konuşayım, baya iş görüyor.
Gel gelelim enterprise tarafına. Orada işler biraz başka dönüyor. 100+ geliştiricili, birden fazla takımın aynı monorepo’da çalıştığı yapılarda bu özelliklerin anlamı değişiyor; bir takımın açtığı PR’ı başka bir takımın incelemesi gerektiğinde, PR understanding özelliği bağlamı hızlıca toparlıyor (yanı neyin neden değiştiğini tek bakışta daha net gösteriyor). Geçen ay bir telekomda tam olarak bunu yaşadık — platform takımı infrastructure tarafında bir değişiklik yapmıştı, uygulama takımı da review edecekti ama kimse ilk anda neyin oynadığını çıkaramıyordu. Copilot burada köprü gibi çalıştı.
Bunu biraz açayım.
Copilot Chat’in PR review özelliği insan review’ının yerini almıyor — önü hızlandırıyor. İlk geçişi AI yapıyor, derinlemesine analizi insan yapıyor. Bu hibrit model, şu an için en mantıklı yaklaşım.
Beklediğim Kadar Mı İyi? Eleştirel Bakış
Aslında, Açık konuşayım: bu güncellemeler doğru tarafa gidiyor, ama işin içinde hâlâ ufak tefek değil, baya hissedilen eksikler var. Hani ilk bakışta “tamamdır” diyorsunuz, sonra bir iki PR açınca tablo biraz değişiyor.
İnanın, Birincisi, review kalitesi tutarsız. Bu ne anlama geliyor? Bazı PR’larda gerçekten işe yarayan öneriler geliyor — mesela “bu fonksiyon null check eksik” ya da “bu SQL sorgusu injection’a açık” gibi net uyarılar — ama bazı PR’larda öyle yüzeyde dolaşıyor ki, “Code looks good overall” gibi genel geçer yorumlarla yetiniyor; bu da bence PR’ın büyüklüğü ve karmaşıklığına göre değişiyor, çünkü basit refactoring işlerinde fena değilken karmaşık feature branch’lerde biraz tökezliyor.
İkincisi, summary tarafı garip bir şekilde dengesiz. Bazen gereğinden fazla detaya giriyor, bazen de elindeki işi üç cümleye sıkıştırıp geçiyor; yanı standart bir ritim yok. 3 dosyalık küçük bir PR’da yarım sayfa döküyor, 50 dosyalık dev bir PR’da işe sanki acele etmiş gibi davranıyor. Hmm, bir saniye… evet, bu muhtemelen context window sınırıyla ilgili.
Üçüncüsü — ve açıkçası beni en çok burası düşündürdü — diff üzerindeki Copilot butonu hâlâ public preview’da. Yanı herkes kullanamıyor. Peki, gitHub Copilot Business veya Enterprise lisansınız olsa bile bunu ayrıca açmanız gerekiyor; yanı lisans var diye otomatik gelmiyor, küçük ama can sıkan bir detay bu. Bunu daha çabuk GA’ya taşımaları lazım.
💡 Bilgi: Diff üzerindeki Copilot butonunu kullanmak için organizasyonunuzun Copilot ayarlarından “Public preview features” seçeneğini etkinleştirmeniz gerekiyor. Settings → Copilot → Policies yolundan ulaşabilirsiniz.Pratik Uygulama: İlk Adımlar
Denemek istiyorsanız, işin başı basit. Ama biraz da dikkat istiyor.
- GitHub Copilot Business veya Enterprise lisansınızın aktif olduğundan emin olun. — bunu es geçmeyin
- github.com/copilot adresine gidin ve herhangi bir PR URL’sını yapıştırın. — bunu es geçmeyin
- Summarize this pull request” diye sorun — önce bir ilk okuma alın. — ciddi fark yaratıyor
- Sonra “Review this pull request for security issues” gibi daha nokta atışı sorular sorun.
- Memnun kaldıysanız, diff üzerindeki butonu da public preview’dan etkinleştirin.
Burada küçük bir detay var. Ekibinizle birlikte bir “Copilot Review Pilot” yapın; iki hafta boyunca her PR’da önce Copilot review alsın, sonra insan review yapılsın, ardından ikisini yan yana koyup bakın (2019’da benzer bir yaklaşımı statik analiz araçları için denemiştik, SonarQube’u ekibe böyle benimsetmiştik), yanı yöntem aslında yeni değil. Burada da baya iş görüyor.
Daha önceki yazımda GitHub Pull Requests Dashboard: Herkes İçin Açılan Yeni Deneyim konusunu ele almıştım — bu yeni PR dashboard’u ile Copilot Chat’in PR yeteneklerini birlikte kullanınca, açık konuşayım, akış daha derli toplu hâle geliyor.
Ayrıca Azure DevOps Git Policy Yönetimi: 10x Hız Kazanmanın Yolu yazıma da göz atmanızı öneririm — PR policy’leri ile AI destekli review’ı birleştirince code quality süreci biraz daha oturuyor, hatta bazen beklediğinizden iyi toparlıyor.
Ha, unutmadan söyleyeyim: GPT-5.5 GitHub Copilot’a Geldi: Ne Değişiyor, Ne Kadar Ediyor? yazısında Copilot’un model güncellemelerini detaylıca incelemiştim. Bu PR yetenekleri de büyük ihtimalle aynı model altyapısının üstüne kuruluyor; model kalitesi arttıkça review tarafı da yukarı gidiyor, en azından ben öyle görüyorum (ilk duyduğumda inanamadım). Peki neden? Çünkü temel motor değişince çıkan yorumun tonu da ister istemez değişiyor.
“chatpr” ne demek: Copilot Chat ile PR review akışının kısayolu
Geliştiriciler çoğu zaman “Copilot Chat ile PR review” yerine kısaca chatpr diye arıyor; resmî bir komut adı değil, sohbet penceresinden diff inceleme akışının günlük dildeki karşılığı. Yukarıda anlattığım github.com üzerindeki diff butonundan farklı olarak chatpr niyeti, IDE içinden sohbet ederek değişiklikleri taramayı kapsıyor. Bu yüzden “diff butonu” ile “chat üzerinden inceleme” iki ayrı yol; ikisini karıştırmamakta fayda var.
Pratikte chatpr akışını üç şekilde kuruyorsun:
- IDE içi Code Review: VS Code veya Visual Studio’da Copilot sohbet kutusundaki Code Review düğmesinden “Review Staged Changes” ya da “Review Unstaged Changes” diyerek henüz PR açmadan yerel diff’i inceletirsin.
- GitHub MCP ile tam PR: GitHub MCP sunucusunu bağladığında Copilot yalnızca açık dosyaları değil, PR’ın tamamını görür; diff’i çeker, bağlı issue bağlamını okur ve bulguları inline yorum olarak geri yazar.
- Terminalden tetikleme:
gh pr edit --add-reviewer @copilotile komut satırından Copilot’u reviewer olarak ekleyip incelemeyi başlatırsın.
Önemli bir ayrıntı: chat üzerinden inceleme ile otomatik PR review aynı modeli ve çalışma yolunu kullanmıyor. Bu yüzden
.github/copilot-instructions.mdtalimatların sohbet incelemesinde devreye girerken otomatik incelemede her zaman uygulanmayabiliyor.chatpr nedir, ayrı bir komut mu?
Hayır, chatpr ayrı bir komut veya eklenti değil. Copilot Chat ile pull request / diff inceleme akışını anlatan günlük bir kısaltma. Yerel değişiklikler için IDE’deki Code Review düğmesini, tam PR diff’i içinse GitHub MCP sunucusunu kullanırsın; ikisi de “chatpr” niyetini, yani sohbet ederek kod inceletmeyi karşılar.
Sıkça Sorulan Sorular
Copilot Chat PR review özelliği insan code review’ının yerini alır mı?
Hayır, almaz. Açıkçası almamalı da zaten. Copilot teknik kalıpları, güvenlik açıklarını. Yaygın anti-pattern’leri yakalıyor ama mesela business logic hatalarını, domain-specific sorunları görmüyor. Bence en mantıklı kullanım şekli şu: Copilot ilk geçişi yapsın, sonra insan derinlemesine baksın.
Kısa bir not düşeyim buraya.
Bu özellikler GitHub Free planında da var mı?
Hani, Copilot Chat’in temel özellikleri GitHub Copilot Individual planında ($10/ay) mevcut. Ama PR review ve understanding gibi gelişmiş şeyler Business ($19/ay) veya Enterprise ($39/ay) planlarında çok daha kapsamlı çalışıyor. Diff üzerindeki buton şu an public preview’da, yanı aslında sadece business/enterprise kullanıcılarına açık.
Copilot Chat PR özelliği Azure DevOps’ta da çalışıyor mu?
Dürüst olmak gerekirse, Şu an yok maalesef. Bu özellikler yalnızca GitHub platformunda (github.com) kullanılabiliyor. Azure DevOps kullanıyorsanız, ya GitHub ile entegre çalışmayı düşünün ya da Azure DevOps’un kendi Copilot entegrasyonlarını bekleyin. Microsoft bu konuda çalışıyor ama henüz net bir tarih yok, tecrübeme göre bu tür şeyler biraz zaman alıyor.
Türkçe commit mesajları ve yorumlarla Copilot Chat düzgün çalışıyor mu?
Açık konuşayım, Kısmen çalışıyor yanı. Basit Türkçe ifadeleri anlıyor ama domain-specific teknik Türkçe’de takılabiliyor. Bence en iyi yol şu: commit mesajlarınızı İngilizce yazın, PR açıklamalarını da mümkünse İngilizce tutun. Sız hiç denediniz mi? Hem Copilot’un doğruluğu artıyor hem de uluslararası iş birliği açısından faydalı oluyor.
Diff üzerindeki Copilot butonunu nasıl aktif edebilirim?
Organizasyonunuzun GitHub ayarlarında Settings → Copilot → Policies bölümüne girip “Public preview features” seçeneğini açmanız gerekiyor. Bireysel kullanıcılar da kendi Copilot ayarlarından bu özelliği etkinleştirebilir. Özellik hani public preview’da olduğu için zaman zaman değişiklikler olabiliyor, bunu göz önünde bulundurun.
Kaynaklar ve İleri Okuma
GitHub Blog: Copilot Chat Improvements for Pull Requests
Şöyle söyleyeyim, GitHub Docs: Using Copilot Chat in GitHub
Cem A.
PR review darboğazı ciddi bir sorun, özellikle büyük difflerde gözden kaçan şeyler olabiliyor. Copilot’un structured review sunması güzel ama kritik güvenlik açıklarını ne kadar yakalayabildiğini merak ediyorum, bunu test ettiniz mi?
Berk N.
Biz de ekipte yakın zamanda bunu denedik, özellikle büyük diff’lerde “bu değişiklik neden yapıldı” sorusunu sormak zaman kazandırıyor açıkçası. Ama kritik PR’larda yine de insan gözü şart, tamamen bırakmak riskli olabilir. Kurumsal darboğaz kısmını merak ettim, orada somut metrikler paylaştınız mı?
Ahmet Y.
Biz de ekipte PR review süreçleri bayağı tıkanıyordu, Copilot’ın bu özelliğini deneyelim dedik. Diff üzerinde doğrudan soru sorabilmek gerçekten işe yarıyor ama kritik kararları hala insana bırakmak gerekiyor tabii. Kurumsal ekiplerde darboğazı nasıl etkilediğini merak ediyordum, yazının devamını sabırsızlıkla okuyacağım.
Tuğçe R.
Diff üzerinde direkt soru sorabilmek gerçekten iş kurtarıcı olabilir, özellikle tanımadığın bir repoya PR review yaparken. Peki büyük diff’lerde (500+ satır değişiklik gibi) Copilot’un özetleme kalitesi nasıl, anlamsız bir özetle mi geliyor yoksa gerçekten işe yarıyor mu?
Yorumlar kapalı.






4 comments