Çekme istekleri hakkında

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Çekme istekleri (PR' ler), Azure Repos'taki git deposundaki kodu değiştirmenin, gözden geçirmenin ve birleştirmenin bir yoludur. PR'ler aynı depodaki dallardan veya deponun çatallarındaki dallardan gelebilir. Ekipler, kodu ana dala birleştirmeden önce kodu gözden geçirmek ve değişikliklerle ilgili geri bildirimde bulunmak için ÇEKME'leri kullanır. Gözden geçirenler önerilen değişikliklerde adım adım ilerleyebilir, açıklama bırakabilir ve kodu onaylamak veya reddetmek için oy verebilir.

Bu makalede çekme isteği yönergeleri ve yönetim konuları açıklanmaktadır. Çekme isteklerini oluşturma, görüntüleme, gözden geçirme ve tamamlama yönergeleri için aşağıdaki makalelere bakın:

Not

Performans ve kararlılık nedeniyle, çekme isteğine eklenebilen gözden geçirenlerin sayısı 1000 veya daha az olmalıdır. 1000'den fazla gözden geçiren eklenirken yeni çekme istekleri oluşturulmaz ve mevcut çekme istekleri 1000'den fazla gözden geçiren eklemenize izin vermez.

İzinler ve önkoşullar

  • Projenizde depolar etkinleştirilmelidir. Depolar hub'ı ve ilişkili sayfalar görüntülenmiyorsa, depoları yeniden etkinleştirmek için bkz. Azure DevOps hizmetini açma veya kapatma.

  • PR'leri görüntülemek veya gözden geçirmek için Temel erişim veya daha yüksek erişime sahip bir Azure DevOps projesinin üyesi olmanız gerekir.

    • Projeniz yoksa bir proje oluşturun veya ücretsiz kaydolun.
    • Proje üyesi değilseniz, eklensin.
  • Çekme isteğine katkıda bulunmak için Okuyucular güvenlik grubunun üyesi olmanız veya ilgili izinlere sahip olmanız gerekir.

  • Çekme isteğini oluşturmak ve tamamlamak için Katkıda Bulunanlar güvenlik grubunun üyesi olmanız veya ilgili izinlere sahip olmanız gerekir.

Not

Ortak projeler için Paydaş erişimi verilen kullanıcılar Azure Repos'a tam erişime sahiptir.

  • Projenizde depolar etkinleştirilmelidir. Depolar hub'ı ve ilişkili sayfalar görüntülenmiyorsa, depoları yeniden etkinleştirmek için bkz. Azure DevOps hizmetini açma veya kapatma.
  • PR'leri görüntülemek veya gözden geçirmek için Temel erişim veya daha yüksek erişime sahip bir Azure DevOps projesinin üyesi olmanız gerekir. Proje üyesi değilseniz, eklensin.
  • Çekme isteğine katkıda bulunmak için Okuyucular güvenlik grubunun üyesi olmanız veya ilgili izinlere sahip olmanız gerekir.
  • Çekme isteğini oluşturmak ve tamamlamak için Katkıda Bulunanlar güvenlik grubunun üyesi olmanız veya ilgili izinlere sahip olmanız gerekir.

İzinler ve erişim hakkında daha fazla bilgi için bkz . Varsayılan Git deposu ve dal izinleri ve Erişim düzeyleri hakkında.

Çekme istekleri için kalite geri bildirimi

Yüksek kaliteli yorumlar, yüksek kaliteli geri bildirimlerle başlar. Harika çekme isteği geri bildiriminin bazı anahtarları şunlardır:

  • Çekme isteği sahibi, doğru kişilerin çekme isteğini gözden geçirmesini sağlamalı ve gözden geçirenlerin kodun ne yaptığını bilmelerini sağlamalıdır.
  • Gözden geçirenler eyleme dönüştürülebilir, yapıcı geri bildirimler vermelidir.
  • Sahipler ve gözden geçirenler hızla yorum yapmalı ve yanıt vermelidir.

Çekme isteği sahipleri:

  • Çekme isteğine atamak için doğru gözden geçirenleri seçtiğinizden emin olun.
  • Kodun nasıl çalıştığını bilen gözden geçirenleri ekleyin.
  • Diğer alanlarda çalışan geliştiricilerden fikirlerini paylaşmalarını isteyin.
  • Değişikliklerin net bir açıklamasını verin.
  • Çekme isteği şablonlarıyla ilgili gözden geçiren kılavuzu sağlayın.
  • Kodun derlemesini, içinde çalışan düzeltme veya özellik ile sağlayın.
  • Önerileri yanıtlayın, öneriyi kabul edin veya önerilen değişikliğin neden ideal olmadığını açıklayın.
  • Çekme isteğinin kapsamı dışında iyi öneriler için bu değişiklikleri yapmak için yeni iş öğeleri, dallar ve PR'ler oluşturun.

Gözden geçirenler aşağıdaki görevleri gerçekleştirmelidir.

  • Kabul etmedikleri değişiklikler hakkında geri bildirim sağlayın
  • Sorunları belirleme ve farklı yapılması gerekenler hakkında belirli önerilerde bulundu
  • Geri bildirimin net bir amacı olduğundan ve anlaşılması kolay olduğundan emin olun
  • Yorum bırakın veya değişikliklere oy verin

Daha fazla bilgi için bkz . Git çekme istekleriyle ilgili geri bildirim alma.

Dal ilkeleri ve çekme istekleri

Ekibiniz her zaman iyi durumda olmak için deponuzdaki main dal gibi kritik dallara güvenebilir. Dal ilkelerini, bu korumalı dallardaki değişiklikler için PR gerektirecek şekilde ayarlayabilir ve doğrudan dallara gönderilen değişiklikleri reddedebilirsiniz.

Önemli dallarda daha iyi kod kalitesini zorlamak için PR'lere daha fazla ilke ekleyebilirsiniz. Önerilen kodun temiz bir derlemesi veya birden çok gözden geçirenin onayı gibi ek gereksinimler önemli dalların korunmasına yardımcı olabilir.

Bir dal ilkesinde çekme isteği için gerekli onayların sayısını ayarlayabilirsiniz. Ayrıca, bazı gözden geçirenleri tüm veya belirli PR'lerde gerekli veya isteğe bağlı olarak ayarlayabilirsiniz. Çekme isteği, diğer gözden geçirenler değişiklikleri reddetse bile gerekli sayıda onayla otomatik tamamlamaya ayarlanabilir. Ancak, çekme isteklerinin birleştirebilmesi için gerekli gözden geçirenlerin PR'leri onaylaması gerekir. En az iki gözden geçirenin önemli bir çekme isteğindeki değişiklikleri gözden geçirmesi ve onaylaması en iyi yöntemdir.

Çekme isteği yazarı yeni değişiklikler gönderdiğinde oyları sıfırlamak için, En az gözden geçiren sayısı gerektir dal ilkesinde Yeni değişiklikler olduğunda Kodu gözden geçiren oylarını sıfırla'yı seçin.

Aşağıdaki tabloda, bir dalı özelleştirmek için tanımlayabileceğiniz ilkeler özetlemektedir. Tüm depo ve dal ilkelerine ve ayarlarına genel bakış için bkz . Git deposu ayarları ve ilkeleri.

İlke

Varsayılan

Açıklama


Kapalı

Çekme isteklerinde belirtilen sayıda gözden geçirenin onayını iste.

Kapalı

Çekme isteklerinde bağlı iş öğelerini denetleyerek izlenebilirliği teşvik edin

Kapalı

Çekme isteklerinde tüm açıklamaların çözümlendiğini denetleyin.

Kapalı

Çekme istekleri tamamlandığında kullanılabilir birleştirme türlerini sınırlayarak dal geçmişini denetleyin.

Kapalı

Çekme isteği değişikliklerini önceden birleştirip oluşturarak kodu doğrulamak için bir veya daha fazla ilke ekleyin. ayrıca ilkeleri etkinleştirebilir veya devre dışı bırakabilir.

Kapalı

Çekme isteklerini tamamlamak için diğer hizmetlerin başarılı durum göndermesini gerektirecek bir veya daha fazla ilke ekleyin. ayrıca ilkeleri etkinleştirebilir veya devre dışı bırakabilir.

Kapalı

Çekme istekleri belirli kod alanlarını değiştirdiğinde otomatik olarak dahil etmek üzere kod gözden geçirenleri belirlemeye yönelik bir veya daha fazla ilke ekleyin. ayrıca ilkeleri etkinleştirebilir veya devre dışı bırakabilir.

Daha fazla bilgi için bkz.

Kod kalitesini geliştirmek için durum denetimleri tanımlama

Çekme istekleri ve dal ilkeleri, ekiplerin kodu gözden geçirmek ve otomatik derlemeleri çalıştırmak için en iyi yöntemleri uygulamasını sağlar. Birçok ekibin kod üzerinde yapması gereken daha fazla gereksinim ve doğrulama vardır. Bu gereksinimleri karşılamak için çekme isteği durum denetimlerini çekme isteği iş akışıyla tümleştirebilirsiniz. Çekme isteği durum denetimleriyle, dış hizmetler başarı veya başarısızlık bilgilerini çekme isteğiyle ilişkilendirerek kod değişikliklerini program aracılığıyla kapatabilir.

Daha fazla bilgi için aşağıdaki makaleleri inceleyin:

Birden çok birleştirme temel sorunu

Bazı durumlarda çekme isteği birden fazla gerçek birleştirme tabanına sahiptir ve bu durum güvenlik sorunlarına neden olabilir. Çekme isteğindeki dosyaların birleştirme tabanları içinde farklı sürümleri varsa, birden çok birleştirme tabanı uyarısı gerçekleşir. Daha fazla bilgi ve düzeltme için bkz . Birden çok birleştirme temeli.

Sonraki adımlar