Kod incelemesi

Kod incelemesi

ChatGPT ve Codex istemcilerindeki kod değişikliklerini inceleyin

Kod değişikliklerini anlamak, olası sorunları araştırmak ve inceleme geri bildirimlerini hazırlamak için ChatGPT veya Codex kullanın.

Çekme isteği incelemeleri

Code Review eklentisi, bir çekme isteğinin açıklamasını, değiştirilen dosyaları, yorumları ve kontrolleri gösterir. Onaylamadan önce olası sorunları araştırmak için bu eklentiyi kullanın.

GitHub kod incelemesi genel kullanıma açıktır. Code Review'da GitLab birleştirme isteği desteği önizleme aşamasındadır. GitLab'dan bulut incelemelerini @codex review ile veya otomatik birleştirme isteği incelemeleriyle tetiklemek için GitLab birleştirme isteklerini Codex ile inceleme sayfasına bakın.

Depodan tetiklenen incelemeler için GitHub entegrasyon kılavuzuna ve Codex Cloud (Legacy) ortam kurulumuna bakın.

Masaüstü uygulaması Code Review'u içerir. Yüklü eklentileriniz arasından bu eklentiyi uygulamanın kenar çubuğuna sabitleyebilirsiniz.

Bir çekme isteğini görüntüleyin

  1. Kenar çubuğundan Code Review'u açın.
  2. İstendiğinde kaynak hesabınızı bağlayın. İncelemek istediğiniz depoya erişimi olan bir hesap kullanın.
  3. Kenar çubuğundan bir çekme isteği seçin veya bağlantısını arama alanına girin.
  4. Açıklama, etkinlik, yorumlar ve kontroller için Özet bölümünü okuyun. Değiştirilen dosyaları ve yorumları fark görünümüyle birlikte incelemek için Değişiklikler bölümünü açın.

İlgilenmeniz gereken incelemeleri bulun

Depolar genelindeki GitHub çekme isteklerini bulmak için kişisel gelen kutunuzu kullanın. Sizden istenen incelemeler için Bana atanan, ekibinizden istenenler için Ekibime atanan, kendi değişikliklerinize dönmek için ise Benim oluşturduğum seçeneğini seçin. İnceleme durumunu kontrol edin, ardından geri bildirimleri ve kontrolleri incelemek için çekme isteğini açın.

Bir incelemeye daha sonra dönmek için araç çubuğundaki sabitleme simgesini seçin. Çekme isteği kenar çubuğunda Sabitlenenler altında görünür.

Değişen dosyaları ve ilgili çekme isteklerini inceleyin

Değişiklikler bölümünde bir dosyayı inceledikten sonra Görüntülendi olarak işaretle seçeneğini seçin. İşareti kaldırmak için aynı denetimi tekrar seçin. Görüntülendi işaretleri, gösterilen revizyon için geçerlidir.

Birbirine bağımlı çekme isteklerine bölünmüş değişikliklerde, Özet bölümündeki Yığın seçeneğini kullanarak ilgili bir çekme isteğini açın ve değişiklik farklarını, yorumlarını ve kontrollerini inceleyin. Bu bölüm, Code Review açık çekme isteklerinden oluşan bir yığın bulduğunda görünür.

Otomatik bulut incelemesini okuyun

ChatGPT Codex bağlayıcısı, gerekli depo izinleri ve otomatik incelemeler etkinleştirildiğinde Codex, bir GitHub çekme isteğini siz açmadan önce inceleyebilir. Yorumlar GitHub'da ve Code Review'da görünür.

Bulut incelemesi için bir bulut ortamı oluşturmanız veya yönetmeniz gerekmez. Bağlantı gereksinimleri, depo ayarları ve şu komutla tetiklenen incelemeler hakkında bilgi için: @codex review, GitHub'da Codex kullanımı sayfasına bakın.

İnceleme bulgularını değişiklik farklarıyla karşılaştırarak kontrol edin. Otomatik bulut incelemeleri, çekme isteğinin sohbetinde başlattığınız incelemelerden ayrıdır.

Değişiklik hakkında sorular sorun

Çekme isteğinin sohbetinde beklenen davranışı açıklayın ve Codex'ten değişikliği açıklamasını veya araştırmasını isteyin.

Yeni bir sohbette inceleme başlatmak için Codex ile incele seçeneğini seçin. Çekme isteğini mevcut bir sohbetin yanında görüntülüyorsanız değişiklik hakkında soru sormak için o sohbeti kullanın.

Ekibinizin inceleme yönergelerini veya tasarım belgelerini Codex'e sağlamak için yüklü becerileri ve bağlı kaynakları kullanın. Değişikliği özetlemesini ve riskleri açıklamasını isteyin, ardından atıfta bulunduğu bağlamı ve kodu doğrulayın.

Örneğin bir çekme isteği, bir sorun panosuna Açık ve Kapalı filtrelerini ekliyor. Tümü seçeneğinin varsayılan olarak kalmasını ve hiçbir sorun eşleşmediğinde boş durum görünümünün gösterilmesini bekliyorsunuz:

Walk me through this pull request. Focus on the default filter and what
happens when there are no matching issues. All should remain the default.

Kanıt isteyin:

Show me the code path and tests for the no-matches case. Explain what is
covered and what still needs verification.

Atıfta bulunulan değişiklik farklarını ve testleri beklenen davranışla karşılaştırarak kontrol edin.

Açıklamasını ve Değişiklikler bölümündeki ilgili satırları incelemek için bir bulguyu seçin. Düzeltme gerektirdiğine karar vermeden önce en güncel değişiklik farkları, beklenen davranış ve testlerle karşılaştırarak kontrol edin. Devam eden bir incelemeyi durdurmak için inceleme sohbetini kullanın.

İncelemenizi özelleştirin

Codex ile incele seçeneğinin yanındaki İnceleme talimatları dişli simgesini seçin. Bu talimatları Ayarlar > Code Review bölümünden de düzenleyebilirsiniz.

Codex'e tüm incelemelerinizde geçerli olacak ölçütler ve bir raporlama biçimi verin; örneğin:

Start with a short summary. Prioritize behavior changes, data loss, and
missing edge-case tests. For each finding, explain the triggering input,
expected behavior, and actual behavior. Use our team's concise review style.

Bu talimatlar, tüm depolarda Codex ile incele seçeneğiyle başlattığınız incelemeler için geçerlidir. Devam eden bir inceleme sırasında yapılan değişiklikler bir sonraki incelemenize uygulanır. Belirli bir değişikliğe yönelik sorular için çekme isteği sohbetini kullanın.

İsteğe bağlı olarak Çizgi roman, Görselleştirme veya PDF seçeneğini seçerek değişikliği o biçimde açıklamaya yönelik önerilen bir talimat ekleyin. Metni gerektiği gibi düzenleyin, ardından Kaydet veya İncelemeyi çalıştır seçeneğini seçin.

Geri bildirim paylaşın ve takibini yapın

Bir çekme isteğini sohbette incelemek yorum göndermez, isteği onaylamaz veya birleştirmez. Hangi bulguları paylaşacağınızı siz seçersiniz.

Olası bir sorunu doğruladıktan sonra Codex'ten bir inceleme yorumu hazırlamanıza yardımcı olmasını isteyin:

Using the team review guidelines we discussed, draft a comment describing
the no-matches behavior we verified, what should happen instead, and the test
that would cover it. Keep the comment as a draft.

Göndermeden önce taslaktaki dosya ve satır referanslarını kontrol edin. Hazır olana kadar taslakları sohbette tutun: Özet veya Değişiklikler bölümünden yorum göndermek, İncelemeyi gönder işlemini beklemeden yorumu hemen kaynak sağlayıcısına iletir.

İncelemeyi gönder üzerinden Yorum yap, Onayla veya Değişiklik iste seçeneğini seçin ve incelemenizi kaynak sağlayıcısına gönderin. Göndermeden önce seçili kararı ve inceleme yorumunu kontrol edin.

Çekme isteğini siz oluşturduysanız isteğinize dönün ve Codex'ten belirli geri bildirimleri ele almasını isteyin. Ortaya çıkan değişiklikleri inceleyin ve ilgili testleri çalıştırın. Onaylamadan veya birleştirmeden önce en son revizyonu, kontrolleri ve henüz ele alınmamış geri bildirimleri kontrol edin.

Code Review, ekli görseller içeren çekme isteği açıklamalarını düzenlemeyi desteklemez. Bu açıklamaları düzenlemek için çekme isteğini GitHub'da açın.

Sohbette devam edin

Özet bölümünde Sohbetler göründüğünde, konuşmaya dönmek için bağlantılı sohbetlerden birini seçin. Bunlar, çekme isteğiyle ilişkili sohbetlerinizdir.

Codex'te başarısız kontrolleri sohbete eklemek için açık bir çekme isteğinin Kontroller bölümünde Düzelt seçeneğini seçin. Bu işlem, göndermeden bir mesaj hazırlar. Prompt'ınızı gözden geçirin veya ekleyin, ardından Codex'ten araştırmasını istemek için gönderin. Ortaya çıkan değişiklikleri inceleyin ve düzeltmeyi uzak depoya göndermeden önce ilgili testleri yeniden çalıştırın.

Kullanılabilir tanılama bilgileri, kontrol sağlayıcısına bağlıdır. Üçüncü taraf CI için Codex, GitHub'a bildirilen durumu ve çıktıyı kullanabilir.

Yerel değişiklikleri inceleyin

Codex'in yerleşik /review komutu, Git çalışma kopyanızdaki değişiklikleri incelerken Code Review eklentisi çekme istekleriyle çalışır. İlgili adımları görmek için kullandığınız istemciyi seçin.

Uygulamada inceleme

Nelerin değiştiğini anlamak, belirli satırlara geri bildirim vermek ve nelerin hazırlama alanına ekleneceğine, geri alınacağına, commit edileceğine veya gönderileceğine karar vermek için inceleme bölmesini açın.

Codex'ten değişiklikleri incelemesini istemek için ileti yazma alanına /review yazın. Temel dalla karşılaştırarak incele veya Commit edilmemiş değişiklikleri incele seçeneğini belirleyin. Codex, çalışma ağacınızı değiştirmeden önceliklendirilmiş bulguları bildirir.

İnceleme bölmesi, Git deposunun içindeki bir projeyi gerektirir. Projeniz henüz bir Git deposu değilse uygulama sizden bir tane oluşturmanızı ister.

İnceleme kapsamını seçme

Gösterilen değişiklikler

İnceleme bölmesi yalnızca Codex'in düzenlediği öğeleri değil, Git deponuzun durumunu yansıtır. Codex'in yaptığı değişiklikleri, sizin yaptığınız değişiklikleri ve depodaki commit edilmemiş diğer tüm değişiklikleri içerir.

İnceleme bölmesi varsayılan olarak Hazırlanmamış değişiklikleri gösterir. Git indeksi için Hazırlanmış, seçili bir commit için Commit, temel dalınızla karşılaştırılan fark için Dal veya en son asistan turu için Son tur seçeneğini kullanın.

Birden fazla depoyu inceleme

Bir yerel proje, farklı Git depolarıyla desteklenen birden fazla klasör içerdiğinde inceleme bölmesi her depodaki değişiklikleri gösterebilir. Başka bir depoyu incelemek ve mevcut inceleme bölmesinden ayrılmadan eklenen veya kaldırılan satırları görmek için inceleme başlığındaki depo seçiciyi açın.

Bağlı depolardaki asistanın en son değişikliklerini görmek için Son tur seçeneğini belirleyin. Bu görünümde depo seçici Tüm depolar seçeneğini gösterir. Hazırlanmamış, Hazırlanmış ve Dal gibi diğer inceleme kapsamları seçtiğiniz depoya uygulanır.

İnceleme sonuçlarıyla çalışma

Kod incelemesi sonuçları

İnceleme bulguları, inceleme bölmesinde satır içi yorumlar olarak görünür.

İncelemeler varsayılan olarak mevcut sohbette çalışır. Ayarlar > Genel > Kod incelemesi altında Ayrı seçeneğini seçerek ayrı bir inceleme sohbeti başlatın. Geliştirici ayarları sayfasına bakın.

İnceleme panelinde gösterilen satır içi kod inceleme yorumları

Codex'ten bulduğu düzeltmeleri uygulamasını isterseniz normal korumalı alan ve onay ayarlarınız geçerli olur.

İnceleme bölmesinde gezinme

Geri bildirim için satır içi yorumlar

Satır içi yorumlar, geri bildirimi doğrudan fark görünümündeki belirli satırlara eklemenizi sağlar. Bu, Codex'i doğru düzeltmeye yönlendirmenin çoğu zaman en hızlı yoludur.

Satır içi yorum bırakmak için:

  1. İnceleme bölmesini açın.
  2. Yorum yapmak istediğiniz satırın üzerine gelin.
  3. Görünen + düğmesini seçin.
  4. Geri bildiriminizi yazıp gönderin.
  5. Geri bildirim bırakmayı bitirdikten sonra sohbete bir mesaj gönderin.

Yorumlar belirli satırlara bağlı olduğundan Codex, genel bir talimata kıyasla daha hassas yanıt verebilir.

Codex, satır içi yorumları inceleme yönlendirmesi olarak değerlendirir. Yorumları bıraktıktan sonra niyetinizi açıkça belirten bir takip mesajı gönderin; örneğin “Satır içi yorumları ele al ve kapsamı minimumda tut.”

Dosyaları hazırlama alanına ekleme ve geri alma

İnceleme bölmesi, commit işleminden önce farkı şekillendirebilmeniz için Git eylemleri içerir.

Değişiklikleri şu düzeylerde hazırlama alanına ekleyebilir, hazırlama alanından çıkarabilir veya geri alabilirsiniz:

  • Tüm fark: İnceleme başlığındaki Tümünü hazırla veya Tümünü geri al gibi eylem düğmelerini kullanın.
  • Dosya başına: Tek bir dosyayı hazırlama alanına ekleyin, hazırlama alanından çıkarın veya geri alın.
  • Değişiklik bloğu başına: Tek bir değişiklik bloğunu hazırlama alanına ekleyin, hazırlama alanından çıkarın veya geri alın.

Çalışmanın bir bölümünü kabul etmek istediğinizde hazırlama alanını, atmak istediğinizde ise geri alma işlemini kullanın.

Hazırlanmış ve hazırlanmamış durumlar

Git, aynı dosyada hem hazırlanmış hem de hazırlanmamış değişiklikleri temsil edebilir. Bu durumda bölme aynı dosyayı her iki görünümde de gösterebilir. Bu, Git'in normal davranışıdır.