GitHub Copilot'ın gözden geçirme sürecine ne eklediği
Kod incelemeleri ve pull request incelemeleri kalite açısından önemlidir, ancak zaman alıcı ve tutarsız olabilir. Geliştiriciler genellikle düşünceli geri bildirim sağlamaya çalışırken birden fazla dili, tutarsız biçimlendirmeyi ve büyük kod farklarını yönetmek zorunda kalır. GitHub Copilot, işbirliğine dayalı bir gözden geçiren ve yardımcı olarak çalışarak bu iş yükünü kolaylaştırmada yardımcı olur. Sık karşılaşılan sorunları yakalar, inceleme yorumlarını taslak olarak hazırlar, çekme isteklerini özetler, güvenlik risklerini de vurgulayarak gözden geçirenlere net bir başlangıç noktası sağlar. Özel gözden geçirme yönergeleriyle Copilot'a, ekipler ve depolar arasında tutarlılık sağlayarak sizin yaptığınız desenleri izlemesi için yol gösterebilirsiniz.
Bu ünitenin sonunda şunları yapabileceksiniz:
- Kod incelemelerinde Copilot'un temel özelliklerini belirleyin.
- PRU'ların gelişmiş gözden geçirme özelliklerine nasıl sahip olduğunu açıklayın.
- Copilot incelemesinin geliştiricilere yardımcı olduğu ve onları desteklediği farklı yolları tanıyın.
Kod incelemelerinde Copilot'un temel özellikleri
Copilot, incelemeleri kolaylaştırmak için tasarlanmış çeşitli özellikler sunar:
PR Özetleri: Copilot, değişikliklerin net bir özetini ve etkilenen dosyaların listesini içeren çekme isteği açıklamalarını otomatik olarak taslak olarak oluşturabilir. Bu, gözden geçirenlerin tahminle değil bağlamla başlamasını sağlar.
Güvenlik Düzeltmeleri: GitHub Kod Tarama ile tümleştirilmiş Copilot kod incelemesiyle, güvenlik açıkları farklı dillerde işaretlenir. Örneğin, JavaScript'te Copilot, eval() işlevine geçirilen sağlıksız girişleri tespit edebilir ve yorum yapabilir.
Kullanıcı girişi olan "eval(), kod eklemeye yol açabilir. JSON.parse() gibi güvenli bir ayrıştırıcıyla değiştirin." Ardından deponuzun güvenlik yönergeleriyle uyumlu bir satır içi düzeltme eki sunar.
Satır Satır Açıklamalar: Gözden Geçirenler kodu vurgulayabilir ve Copilot'dan işlevselliği açıklamasını isteyebilir ve tanıdık olmayan kodu hızlı bir şekilde anlamalarına yardımcı olabilir.
Taslak Açıklamaları: Copilot, en iyi yöntemlere veya ekip yönergelerine göre gözden geçirme yorumları oluşturabilir ve geri bildirimleri net ve eyleme dönüştürülebilir hale getirir.
IDE'nizdeki yorumlar: Copilot, doğrudan GitHub.com üzerinde çalışmaya ek olarak IDE'nizin içindeki kodu da gözden geçirebilir. Bu, geliştiricilerin çekme isteği açmadan önce sorunları yakalayıp çözmelerine, süreci hızlandırmalarına ve yeniden iş yükünü azaltmalarına olanak tanır.
PRU'ların gelişmiş inceleme özelliklerini nasıl açtığını anlayın
PRU'lar bu gelişmiş özellikleri güçlendirir. Örneğin, Copilot'ı PR gözden geçiren olarak atamak, her yorum gönderdiğinde bir PRU kullanır. Özel .github/copilot-instructions.md dosyalarla birleştirildiğinde, PRU destekli incelemeler okunabilirlik, güvenlik veya stil odaklı olsun, ekibinizin kurallarıyla uyum sağlar.
Örnek:
Copilot olmadan, çekme isteği gözden geçirenin "Buradaki güvenlik sorununu düzelt" gibi belirsiz yorumları içerebilir. Copilot + PRU'ların yardımıyla inceleme şu hale gelir:
"kullanımı exec() bir kod ekleme güvenlik açığına neden oluyor. Bunu, daha güvenli bir komut yürütme için subprocess.run() ile değiştirmeyi göz önünde bulundurun. Önerilen bir yama aşağıdadır:"
Ayrıca satır içi kod düzeltmesini sağlar.
Copilot incelemesinin geliştiricilere yardımcı olduğu beş farklı yol
Bir sonraki adımda Copilot incelemesinin aşağıdakilerle daha akıllı çalışmanıza nasıl yardımcı olabileceğini inceleyeceğiz:
- Kod gözden geçirme önerileri
- Birden çok dilde Copilot incelemeleri
- Çekme isteklerinde verileri biçimlendirme
- Etkili Pull Request Özetleri Yazma
- Kodu Açıklama ve Gözden Geçirme
Kod incelemelerinde Copilot önerilerini kullanma
Bir çekme isteğini gözden geçirirken, iyileştirilebilecek alanlar belirleyip, mükemmel bir örnek veya kod parçacığı hazırlamak için zaman bulamayabilirsiniz. GitHub Copilot, yazarın çalışmalarını devralmadan bu boşluğu doldurmaya yardımcı olur. Pull isteği "Dosyalar değiştirildi" görünümünün içinde bir kod satırını veya bloğunu vurgulayabilir ve Copilot'tan iyileştirmeler önermesini veya olası sorunları işaretlemesini isteyebilirsiniz. Ardından Copilot, gözden geçirme yorumunuza kopyalayabileceğiniz somut, bağlama duyarlı bir öneri oluşturur ve bu da geri bildiriminizi yazarın üzerinde işlem yapmasını daha net ve kolay hale getirir.
Örneğin, yinelenen mantık içeren bir Ruby dosyasını gözden geçirirken ilgili satırları vurgulayabilir ve şunları sorabilirsiniz:
"Bu yinelenen kod için daha temiz bir Ruby yeniden düzenlemesi önerin."
Copilot, yaygın Ruby en iyi yöntemlerini izleyen güncelleştirilmiş bir sürüm önerecektir. Önerisini (veya bir kısmını) kendi açıklamanızla birlikte gözden geçirme açıklamanıza yapıştırabilirsiniz. Bu, yazara eyleme dönüştürülebilir, yüksek değerli geri bildirim sağlarken, gözden geçirme ve onun adına kodlama arasındaki çizgiyi bulanıklaştırmadan genel kaliteye ve tasarıma odaklanmanızı sağlar.
Birden çok dilde gözden geçirme
Kod incelemesi istediğinizde, Copilot en iyi yöntemleri veya ekip yönergelerini izlemeyen alanları otomatik olarak vurgulayabilir
Copilot, dilin kurallarına uygun iyileştirmeleri hızla oluşturarak birincil uzmanlık alanınızın dışında bile daha güçlü ve daha doğru bir gözden geçirme geri bildirimi vermenizi sağlar.
Pull istekleri için verileri biçimlendirme
Çekme istekleri ölçümler, ekran görüntüleri veya test sonuçları gibi iyi biçimlendirilmiş bağlam içerdiğinde çok daha nettir. Ancak ekipler genellikle bu içeriği tutarlı bir şekilde biçimlendirmeyi unutur. GitHub Copilot, kod incelemesi sırasında ikinci bir göz kümesi olarak hareket edebilir, çekme isteği açıklamasında kötü biçimlendirilmiş tabloları otomatik olarak işaretleyebilir ve şirketinizin stil yönergelerine uygun daha temiz bir sürüm önerebilir.
Örnek: Geliştirici, aşağıdaki sayfa yükleme süreleri tablosuyla bir çekme isteği gönderir. Okumak zordur ve ekibin Markdown stil kılavuzunu izlemez:
| Test Çalıştırması | ÖncekiYüklemeZamanı | Sonraki Yükleme Süresi |
|---|---|---|
| 1.3 | 1.2 | |
| 1.2 | 1.1 | |
| 1.1 | 0.885 | |
| 1.3 | 1.3 | |
| 1.2 | 0.918 | |
| Average | 1.22 | 1.0806 |
İnceleme sırasında Copilot bir yorum yayınlar:
"Bu tablo, deponuzun Markdown yönergelerine uymuyor. İşte şirketinizin stil kılavuzuna göre temizlenmiş bir sürüm."
Ayrıca çekme isteği açıklamasına yapıştırmaya hazır düzeltilmiş bir sürüm içerir:
| Test Çalıştırması | Önceki Yükleme Süresi (saniye) | Güncelleştirmelerin Ardından Yükleme Süresi (saniye) |
|---|---|---|
| 1 | 1.3 | 1.2 |
| 2 | 1.2 | 1.1 |
| 3 | 1.1 | 0.885 |
| 4 | 1.3 | 1.3 |
| 5 | 1.2 | 0.918 |
| Ortalama | 1.22 | 1.0806 |
Gözden geçiren tek tıklamayla Copilot'un önerisini kabul edebilir ve pr'nin yeniden biçimlendirmeye zaman harcamadan şirket stiline uygun olduğundan emin olabilir.
Bu, Otomatik gözden geçiren (kodlama aracısı değil) olarak davranan Copilot'ı gösterir: biçimlendirilmemiş tabloyu görür, .github/copilot-instructions.md öğesinden şirket yönergelerini uygular ve satır içinde düzeltilmiş bir sürüm sunar.
Etkili pull isteği özetleri yazma
PR açıklamaları yazmak genellikle sürecin son adımıdır ve bir engel gibi gelebilir. Copilot bunu kolaylaştırır. Çekme isteği açıklaması düzenleyicisinden Copilot simgesini kullanarak taslak özeti veya ana hat oluşturabilirsiniz. Düzenlemeler yapsanız bile, iyi yapılandırılmış bir başlangıç noktası olması zaman kazandırır ve gözden geçirenlerin ihtiyaç duydukları bilgilere sahip olmasını sağlar.
Kodu açıklama ve gözden geçirme
Bazen bir pull request içerisindeki kodu bilmiyor olabilirsiniz. Bunun için mücadele etmek yerine Copilot'dan değişiklikleri açıklamasını isteyebilirsiniz. Copilot, ekip arkadaşlarınızdan geri bildirim istemeden önce kendi PR'lerinizin ilk incelemesini de çalıştırabilir. Bu, daha küçük sorunları yakalamaya yardımcı olur, en iyi yöntemleri doğrular ve gönderiminizin kalitesi konusunda size daha fazla güven verir.
Kod incelemeleri söz konusu olduğunda Copilot'un neler yapabileceğini artık biliyorsunuz. Şimdi Doğrudan GitHub.com copilot incelemelerini nasıl kullanacağınızı görelim.