Kod incelemesi
Kod incelemesi
ChatGPT ve Codex istemcilerindeki kod değişikliklerini inceleyin
- ChatGPT masaüstü uygulaması Masaüstünde projeler, dosyalar ve uzun süren görevler.
- ChatGPT web Tarayıcınızda sohbetler, projeler ve Work.
- Codex CLI Terminalinizde Codex.
- Codex IDE uzantısı Düzenleyicinizde Codex.
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
- Kenar çubuğundan Code Review'u açın.
- İstendiğinde kaynak hesabınızı bağlayın. İncelemek istediğiniz depoya erişimi olan bir hesap kullanın.
- Kenar çubuğundan bir çekme isteği seçin veya bağlantısını arama alanına girin.
- 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.
ChatGPT Work'te incelenmesini istediğiniz kodu yükleyin veya yüklü bir kaynak eklentisi üzerinden erişilebilir hâle getirin. Prompt'ınızda pull request'i, dalı, commit'i, dosyaları ve inceleme ölçütlerini belirtin.
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.
CLI inceleme hazır ayarlarını açmak için /review yazın. Codex, seçilen diff'i
okuyan ve çalışma ağacınızı değiştirmeden önceliklendirilmiş, uygulanabilir bulgular
bildiren özel bir inceleyici başlatır.
IDE uzantısının ileti yazma alanına /review yazın. Bir temel
dala göre 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.
/review komutu yalnızca açık proje bir Git
deposunun içindeyken görünür.
İnceleme kapsamını seçme
Prompt'ınızda incelenecek pull request'i, dalı, commit'i veya dosyaları belirtin. Yüklü bir kaynak eklentisi üzerinden erişilemeyen yerel dosyaları incelemek için bunları sohbete yükleyin.
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.
Şu /review kapsamlarından birini seçin:
- Bir temel dala göre incele, merge base'i bulur ve dalınızdaki diff'i inceler.
- Commit edilmemiş değişiklikleri incele; staged, unstaged ve untracked dosyaları kapsar.
- Bir commit'i incele, seçilen commit'in tam değişiklik kümesini inceler.
- Özel inceleme talimatları, incelemeyi sağladığınız ölçütlere odaklar.
Şu /review kapsamlarından birini seçin:
- Bir temel dala göre incele, geçerli dalınızı seçtiğiniz bir dalla karşılaştırır.
- Commit edilmemiş değişiklikleri incele, çalışma ağacınızdaki değişiklikleri inceler.
İnceleme sonuçlarıyla çalışma
İnceleme bulguları web sohbetinde görünür. Kanıt isteyin, daha dar kapsamlı bir takip incelemesi talep edin veya ChatGPT'den düzeltilmiş dosyalar hazırlamasını isteyin.
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, transkriptte bir tur olarak görünür. İncelemelerin geçerli
oturumdan farklı bir model kullanmasını istediğinizde config.toml içinde
review_model ayarını yapın.
İnceleme varsayılan olarak geçerli sohbette çalışır. /review komutunun ayrı bir inceleme sohbeti başlatmasını istediğinizde
chatgpt.reviewDelivery ayarını detached olarak belirleyin. Bkz.
IDE uzantısı ayarları başvurusu.
ChatGPT'den düzeltilmiş dosyalar hazırlamasını isterseniz sohbette kullanılabilen araçlar ve çalışma alanı izinleri yine geçerli olur.
Codex'ten bulduğu düzeltmeleri uygulamasını isterseniz normal korumalı alan ve onay ayarlarınız geçerli olur.
İnceleme bölmesinde gezinme
- Bir dosya adına tıklamak genellikle o dosyayı seçtiğiniz düzenleyicide açar. Varsayılan düzenleyiciyi geliştirici ayarlarından seçebilirsiniz.
- Dosya adının arka planına tıklamak, değişiklik farklarını genişletir veya daraltır.
- Command tuşunu basılı tutarken tek bir satıra tıklamak, o satırı seçtiğiniz düzenleyicide açar.
- Bir değişiklikten memnunsanız onu hazırlama alanına ekleyebilir veya istemediğiniz değişiklikleri geri alabilirsiniz.
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:
- İnceleme bölmesini açın.
- Yorum yapmak istediğiniz satırın üzerine gelin.
- Görünen + düğmesini seçin.
- Geri bildiriminizi yazıp gönderin.
- 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.