Dal ilkeleri ve ayarları

Azure Repos | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018-TFS 2015

Dal ilkeleri ekiplerin önemli geliştirme dallarını korumalarına yardımcı olur. İlkeler, takımınızın kod kalitesini ve değişim yönetimi standartlarını zorlar. Bu makalede, dal ilkelerinin nasıl ayarlanacağı ve yönetileceği açıklanmaktadır. Tüm depo ve dal ilkelerine ve ayarlarına genel bakış için bkz. Git deposu ayarları ve ilkeleri.

Gerekli ilkeleri yapılandırılmış bir dal silinemez ve tüm değişiklikler için çekme istekleri (PR 'ler) gerekiyor.

Önkoşullar

  • dal ilkelerini ayarlamak için, Project yöneticileri güvenlik grubunun bir üyesi olmanız veya depo düzeyi düzenleme ilkeleri izinlerinizin olması gerekir. Daha fazla bilgi için bkz. Git deposu Izinlerini ayarlama.

Dal ilkelerini yapılandırma

dal ilkelerini yönetmek için, web portalındaki dallar sayfasını açmak üzere Reposdallar ' ı seçin.

Dallar menü öğesini gösteren ekran görüntüsü.

ayrıca, Project Ayarlardepoilkeleridal ilkeleri şube adı >ile dal ilkesi ayarlarına de ulaşabilirsiniz.

İlkeleri olan dallar bir ilke simgesi görüntüler. Doğrudan dalın ilke ayarlarına gitmek için simgeyi seçebilirsiniz.

Dal ilkelerini ayarlamak için, yönetmek istediğiniz dalı bulun. Sağ üst köşedeki şube adı arama kutusunda dala gözatıp veya dalınızı arama yapabilirsiniz.

Dalın yanındaki diğer seçenekler simgesini seçin ve ardından bağlam menüsünden dal ilkeleri ' ni seçin.

Bağlam menüsünden dal ilkelerini aç ' ın gösterildiği ekran görüntüsü.

Dalınızı sayfada bulun. Listeye gözatıp sağ üst köşedeki tüm dalları ara kutusunu kullanarak dalınızı arayabilirsiniz.

Dallar sayfasını gösteren ekran görüntüsü.

... Düğmesini seçin. Bağlam menüsünden dal ilkeleri ' ni seçin.

Bağlam menüsünden dal ilkelerini aç ' ın gösterildiği ekran görüntüsü.

Dal ayarları sayfasında ilkeleri yapılandırın. Her ilke türü için açıklamalar ve yönergeler için aşağıdaki bölümlere bakın.

İlkeleri ilkeler sayfasında yapılandırın. Her ilke türünün açıklamaları için aşağıdaki bölümlere bakın. Yeni ilke yapılandırmanızı uygulamak için Değişiklikleri Kaydet ' i seçin.

Ilkeler sekmesini gösteren ekran görüntüsü.

Minimum gözden geçiren sayısı gerektir

Kod İncelemeleri yazılım geliştirme projeleri için önemlidir. Ekiplerin PR 'ler gözden geçirmesini ve onaylamasını sağlamak için, en az sayıda gözden geçiren arasından onay gerekebilir. Temel ilke, belirli sayıda gözden geçirenlerin kodu, ret olmadan onaylamasını gerektirir.

İlkeyi ayarlamak için, dal ilkelerialtında, en az sayıda gözden geçiren olması gerekirseçeneğini belirleyin. Gerekli gözden geçirenler sayısını girin ve aşağıdaki seçeneklerden birini belirleyin:

Kod Incelemeleri gerektir ilkesini etkinleştir ' i gösteren ekran görüntüsü.

  • Bir PR 'nin oluşturucusunun onayını oylamasına izin vermek için isteyicileri kendi değişikliklerini onaylamalarına Izin ver ' i seçin. Aksi takdirde, Oluşturucu çekme isteği için yine de kabul edebilir, ancak oylarının en az sayıda gözden geçiren sayısına doğru sayılmaz.

  • En son iletici, görevleri birbirinden ayırmayı zorlamak için kendi değişikliklerini onaylamayı yasakla ' yı seçin. Varsayılan olarak, kaynak dalda anında İlerlerken izni olan herkes hem işleme ekleyebilir hem de PR onayını oylar. Bu seçeneğin belirli olması, kendi değişikliklerini normalde onaylasalar bile en son iticinin oyu saymayılacağı anlamına gelir.

  • Bazı gözden geçirenler, bazı gözden geçirenler onaya karşı oy verse bile pr tamamlamaya izin vermek için beklemeyi veya reddetmeyi oylasa bile Tamamlamaya izin ver'i seçin. En az gözden geçirenin yine de onaylaması gerekir.

  • Yeni değişiklikler ne zaman itilir? altında:

    • Son kaynak dal değişikliği için en az bir onay oyu gerektirmek için son yinelemede en az bir onay gerektir'i seçin.
    • Tüm onay oylarını kaldırmak için Tüm onay oylarını sıfırla (reddedilen veya beklemek için oyları sıfırlamaz) öğesini seçin, ancak kaynak dal her değişirken reddedilen veya beklemek için oyları tut'a tıklayın.
    • Onaylanacak, reddedecek veya bekleyecek oylar da dahil olmak üzere kaynak dalda her değişiklik olduğunda tüm gözden geçiren oylarını kaldırmak için Tüm kod gözden geçireni oylarını sıfırla'yı seçin.

Kod İncelemesi Gerektir kutusunu işaretleyin

  • İstekte bulunanlar kendi değişikliklerini onaylıyorsa, çekme isteğini oluşturan kişi kendi çekme isteklerinde Onayla'ya oy vermeye devam ediyor ancak en az gözden geçiren sayısına yönelik oylarısayılmaz.
  • Herhangi bir gözden geçiren değişiklikleri reddederse, bazı gözden geçirenler beklemeyi veya reddetmeyi oylasa bile Tamamlanmaya izin ver'i seçmedikçe çekme isteği tamamlanır.
  • Kaynak dala yeni değişiklikler geldiğinde kod gözden geçiren oylarını sıfırlayabilirsiniz. Yeni değişiklikler olduğunda Kodu gözden geçiren oylarını sıfırla'yı seçin.

Diğer tüm ilkeler geçerse, gerekli gözden geçiren sayısı tarafından onaylandıktan sonra oluşturucu pr'i tamamlar.

Bağlantılı iş öğelerini denetle

Çalışma öğesi yönetimi izlemeiçin PR 'ler ve iş öğeleri arasında ilişkilendirmeler gerektirebilir. İş öğelerini bağlama, değişiklikler için daha fazla bağlam sağlar ve güncelleştirmelerin iş öğesi izleme sürecinize gitmesini sağlar.

İlkeyi ayarlamak için, dal ilkelerialtında, bağlantılı Iş öğeleri için denetimiAçıkolarak ayarlayın. Bu ayar, çekme isteği için iş öğelerinin bir PR ile bağlanmasını gerektirir. Bağlı iş öğesi olmadığında, ancak çekme isteğinin tamamlanmasına izin vermek için ayarı uyar ' ı Isteğe bağlı yapın.

Çekme isteklerinde bağlantılı iş öğeleri gerektiren ekran görüntüsü.

Çekme istekleriniz içinde bağlantılı iş öğeleri gerektir

Açıklama çözümlemesini denetle

Açıklama çözümlemesini denetle ilkesi, tüm PR yorumlarının çözümlenip çözümlenmediğini denetler.

Açıklama çözümlemesi Için denetim ayarını Açıkolarak ayarlayarak, dalınız için bir açıklama çözümleme ilkesi yapılandırın. Ardından, ilkeyi gerekli veya isteğe bağlıhale getirmek istediğinizi seçin.

Açıklama çözümlemesini denetle

Çekme isteği açıklamalarıyla çalışma hakkında daha fazla bilgi için bkz. çekme Isteklerini gözden geçirme.

Açıklama çözümlemesini denetle' yi seçerek dalınız için bir açıklama çözümleme ilkesi yapılandırın.

Açıklama çözümlemesini denetle

Çekme isteği açıklamalarıyla çalışma hakkında daha fazla bilgi için bkz. çekme Isteklerini gözden geçirme.

Birleştirme türlerini sınırlama

Azure Repos birçok birleştirme stratejisi vardır ve varsayılan olarak bunların hepsine izin verilir. Pr tamamlama için birleştirme stratejisi zorlayarak tutarlı bir dal geçmişini koruyebilirsiniz.

Birleştirme türlerini sınırla'nınOn olarak ayarlayın. Bu ayar, hangi birleştirme türlerinin sizin için uygun olduğunu sınırlar.

Birleştirme türlerini sınırlama

  • Temel birleştirme (ileri doğru değil) hedefte, ana dalları hedef ve kaynak dalları olan bir birleştirme işlemesi oluşturur.
  • Kenardan birleştirme, kaynak daldan yapılan değişikliklerle hedef dalda tek bir işleme ile doğrusal bir geçmiş oluşturur. Birleştirmeyi ve dal geçmişini nasıl etkilediği hakkında daha fazla bilgi öğrenin.
  • Yeniden temel ve ileri doğru, kaynak işlemeleri birleştirme işlemesi olmayan hedef dalda yeniden oynatarak doğrusal bir geçmiş oluşturur.
  • Birleştirme işlemesi ile yeniden temel, kaynak işlemeleri hedefe yeniden oynatarak bir birleştirme işlemesi oluşturur.

Birleştirme stratejisi zorlama

Çekme isteği tamamlandığında bir birleştirme stratejisi zorlayarak tutarlı bir dal geçmişi saklayın. Birleştirme stratejisi zorla ' yı seçin ve bu stratejiyi kullanarak çekme isteklerinin birleştirilmesini gerektirmek için bir seçenek belirleyin.

Birleştirme gereksinimlerini ayarla

  • İleri sarma birleştirme yok -Bu seçenek, çekme isteği kapandığında kaynak dalın tamamlama geçmişini birleştirir ve hedef dalda bir birleştirme yürütmesi oluşturur.
  • Sıkıştırarak birleştirme -bir sıkıştırarak birleştirme ile tüm çekme isteklerini, kaynak daldaki değişikliklerle hedef dalda tek bir kayıt oluşturarak doldurun. Sıkıştırma birleştirme ve dalınızın geçmişini nasıl etkilediği hakkında daha fazla bilgi edinin .

Derleme doğrulaması

Çekme isteğinin tamamlanabilmesi için, çekme isteği değişikliklerinin başarıyla derlenmesini gerektiren bir ilke belirleyebilirsiniz. Yapı ilkeleri molaları azaltır ve test sonuçlarının geçişini saklar. Sorunları erken yakalamak için geliştirme dallarınızda sürekli tümleştirme (CI) kullanıyor olsanız bile, derleme ilkeleri yardımı.

Yeni bir çekme isteği oluşturulduğunda veya bir dalı hedefleyen mevcut bir PR 'ye yapılan değişiklikler gönderildiğinde, derleme doğrulama ilkesi yeni bir derlemeyi kuyruğa alır. Derleme ilkesi, çekme isteğinin tamamlanıp tamamlanamayacağını öğrenmek için derleme sonuçlarını değerlendirir.

Önemli

Bir yapı doğrulama ilkesi belirtmeden önce, derleme işlem hattına sahip olmanız gerekir. İşlem hattınız yoksa, bkz. derleme işlem hattı oluşturma. Proje türü ile eşleşen yapı türünü seçin.

Yapı doğrulama ilkesi eklemek için

  1. ++' nın yanındaki düğmeyi seçin.

    Derleme doğrulaması'nın yanındaki Ekle düğmesini gösteren ekran görüntüsü.

  2. Derleme ilkesi ayarla formunu doldurun:

    İlke ayarları oluşturma

    • Derleme işlem hattını seçin.

    • İsteğe bağlı olarak bir Yol filtresi ayarlayın. Dal ilkelerde yol filtreleri hakkında daha fazla bilgi.

    • Tetikleyici altındaOtomatik (kaynak dal güncelleştirildiğinde) veya El ile'yiseçin.

    • İlke gereksinimi'ninaltında Gerekli veya İsteğe Bağlı'yaseçin. Gerekli'yi seçerseniz,DISK'leri tamamlamak için derlemelerin başarıyla tamamlanması gerekir. Derleme hatasına bir bildirim sağlamak ancak yine de DISK'lerin tamamlanmasına izin vermek için İsteğe Bağlı'ya seçin.

    • Korumalı dalda yapılan güncelleştirmelerin açık DISK'ler için değişiklikleri bozmay olduğundan emin olmak için derleme süre sonu ayarlayın.

      • Dal adı > güncelleştirildiğinde hemen:Bu seçenek, > dal her güncelleştirildiğinde pr derleme ilkesi durumunu başarısız olarak ayarlar ve bir derlemeyi yenidenqueuyrlar. Bu ayar, korumalı dal değişirse bile PR değişikliklerinin başarıyla derlemesi sağlar.

        Bu seçenek, önemli dalları az değişiklik olan takımlar için en iyisidir. Teams geliştirme dallarında çalışmanız, dal her güncelleştirmesinde derlemeyi beklemenin kesintiye neden olduğunu bulabilir.

      • Dal adı >< güncelleştirildikten n >saat sonra: Geçiş derlemesi, girdiğiniz eşikten daha eski ise korumalı dal güncelleştirildiğinde bu seçenek geçerli ilke durumunun süresini dolar. Bu seçenek, korumalı dal güncelleştirmeleri olduğunda her zaman veya hiçbir zaman derleme gerektirmeyenler arasında bir güvenlik açıklarıdır. Bu seçim, korumalı dalda sık sık güncelleştirmeler olduğunda derleme sayısını azaltır.

      • Hiçbirzaman: Korumalı dalda yapılan güncelleştirmeler ilke durumunu değiştirmez. Bu değer derleme sayısını azaltır, ancak yakın zamanda güncelleştirilmiş olan DISK'leri tamamlarken sorunlara neden olabilir.

    • Bu derleme ilkesi için isteğe bağlı bir Görünen ad girin. Bu ad, ilkeyi Dal ilkeleri sayfasında tanımlar. Görünen ad belirtmezseniz, ilke derleme işlem hattı adını kullanır.

  3. Kaydet’i seçin.

Pr sahibi derlemeyi başarıyla teslim edinca ilke durumu uzer.

Dal adı güncelleştirildiğinde > hemen veya Dal adı güncelleştirildiğinde > saat sonra derleme ilkesi güncelleştirildiğinde ilke durumunuz, önceki derleme artık geçerli değilse korumalı dal güncelleştirildiğinde güncelleştirilir.

Çekme isteğinin tamamlanamadan önce korumalı dalla başarıyla derlemesi için çekme isteğinde değişiklik gerektiren bir ilke ayarlayın. Derleme ilkeleri, kesmeleri azaltır ve test sonuçlarının geçişini sağlar. Derleme ilkeleri, sorunları erkenden yakalamak için geliştirme dalları üzerinde sürekli tümleştirme (CI) kullanıyor olsa bile yardımcı olur.

Derleme doğrulama ilkesi etkinse, yeni bir çekme isteği oluşturulduğunda veya değişiklikler dalı hedef alan mevcut bir çekme isteğine iletilirse yeni bir derleme kuyruğa eklenir. Ardından derleme ilkesi, çekme isteğinin tamamlanamadı mı olduğunu belirlemek için derlemenin sonuçlarını değerlendirir.

Önemli

Derleme doğrulama ilkesi belirtmeden önce bir derleme tanımına sahipsiniz. Bir derleme tanımınız yoksa bkz. Derleme tanımı oluşturma ve proje türünüzle eşleşen derleme türünü seçin.

Derleme ilkesi ekleme

Derleme ilkesi ekle'yi seçin ve Derleme ilkesi ekle'de seçeneklerinizi yapılandırabilirsiniz.

İlke ayarları oluşturma

  1. Derleme tanımını seçin.

  2. Tetikleyici türünü seçin. Otomatik (kaynak dal güncelleştirildiğinde) veya El ile'yiseçin.

  3. İlke gereksinimini seçin. Gerekli'yi seçerseniz,çekme isteklerini tamamlamak için derlemelerin başarıyla tamamlanması gerekir. Derleme hatası bildirimi sağlamak ancak yine de çekme isteklerinin tamamlanmasına izin vermek için İsteğe Bağlı'ya seçin.

  4. Korumalı dalınıza yapılan güncelleştirmelerin açık çekme isteklerinde değişiklikleri bozmay olduğundan emin olmak için derleme süre sonu ayarlayın.

    • Güncelleştirildiğinde hemen:Bu seçenek, korumalı dal güncelleştirildiğinde çekme isteğinde derleme ilkesi durumunu başarısız olarak ayarlar. Derleme durumunu yenilemek için derlemeyi yeniden sırala. Bu ayar, çekme isteklerinde yapılan değişikliklerin korumalı dal değiştiklerini bile başarıyla oluşturmalarını sağlar. Bu seçenek, daha düşük hacimli önemli dallara sahip olan takımlar için en iyisidir. Teams geliştirme dallarında çalışmanız, korumalı dal her güncelleştirildiğinde derlemenin tamamlandıktan sonra tamamlanacak şekilde beklemenin kesintiye neden olduğunu bulabilir.
    • Güncelleştirilen saatler branch name sonra:Bu seçenek, derlemeyi geçirmenin girilen eşikten daha eski olduğu durumda korunan dal güncelleştirildiğinde geçerli ilke durumunun süresinin dolması. Bu seçenek, korumalı dal güncelleştirmeleri olduğunda ve hiçbir zaman bir derleme gerektirmeyenler arasında her zaman bir derleme gerektirme arasında bir güvenlik açıklarıdır. Bu seçenek, korumalı dalda sık sık güncelleştirmeler olduğunda derleme sayısını azaltmak için mükemmeldir.
    • Hiçbirzaman: Korumalı dalda yapılan güncelleştirmeler ilke durumunu değiştirmez. Bu değer, dal için derleme sayısını azaltır. Son zamanlarda güncelleştirilmedi çekme isteklerini kapatırken sorunlara neden olabilir.
  5. Bu derleme ilkesi için isteğe bağlı bir Görünen ad girin. Bu ad, ilkeyi Dal ilkeleri sayfasında tanımlar. Görünen ad belirtmezseniz, ilke derleme tanımı adını kullanır.

  6. Kaydet’i seçin.

Sahibi derlemeyi başarıyla iletirse ilke durumu güncelleştirilir. Hemen güncelleştirildiğinde veya Güncelleştirilmiş derleme ilkesi seçildikten sonra saatlere sahipseniz, en son derleme artık geçerli değilse korumalı dal güncelleştirildiğinde ilke durumu güncelleştirilir. branch name

Durum denetimleri

Dış hizmetler PR'lerinize ayrıntılı durum gönderisi yapmak için PR Durumu API'sini kullanabilir. Ek hizmetler için dal ilkesi, bu üçüncü taraf hizmetlerin PR iş akışına katılmalarını ve ilke gereksinimlerini oluşturmalarını sağlar.

Dış hizmetlerin onaylaması gerektir

Bu ilkeyi yapılandırma yönergeleri için bkz. Dış hizmet için dal ilkesi yapılandırma.

Dış hizmetlerden onay gerektir

Dış hizmetler PR'lerinize ayrıntılı durum gönderisi yapmak için PR Durumu API'sini kullanabilir. Ek hizmetler için dal ilkesi, bu üçüncü taraf hizmetlerin PR iş akışına katılmalarını ve ilke gereksinimleri oluşturmalarını sağlar.

Dış hizmetlerin onaylaması gerektir

Bu ilkeyi yapılandırma yönergeleri için bkz. Dış hizmet için dal ilkesi yapılandırma.

Kodu gözden geçirenleri otomatik olarak dahil etmek

Gözden geçirenleri belirli dizinlerde ve dosyalarda dosyaları değiştiren çekme isteklerine veya bir repo'daki tüm çekme isteklerine otomatik olarak eklersiniz.

  1. Otomatik olarak + dahil edilen gözden +

    Gerekli gözden geçirenleri ekle'yi gösteren ekran görüntüsü.

  2. Yeni gözden geçiren ilkesi ekle ekranı doldurun.

    Yeni gözden geçiren ilkesi ekle ekranı gösteren ekran görüntüsü.

    • Gözden Geçirenler'e kişi ve grup ekleyin.

    • Gözden geçirenleri otomatik olarak eklemek ancak çekme isteğini tamamlamak için onaylarını gerektirmeyenler için İsteğe Bağlı'ya tıklayın.

      Veya çekme istekleri tamamlanana kadar gerekli'yi seçin:

      • Gözden geçiren olarak eklenen her bir kişi değişiklikleri onaylar.
      • Gözden geçiren olarak eklenen her gruptaki en az bir kişi değişiklikleri onaylar.
      • Yalnızca bir grup gerekli ise, belirttiğiniz en az üye sayısı değişiklikleri onaylar.
    • Otomatik olarak dahil edilen gözden geçirenleri gerektiren dosyaları ve klasörleri belirtin. Dalda tüm çekme istekleri için gözden geçirenlerin gerektirmesi için bu alanı boş bırakın.

    • Çekme isteği sahipleri, bu ilkeyi karşılamak için kendi çekme isteklerini onaylamak için oy kullandıklarında, İstek sahiplerinin kendi değişikliklerini onaylamasına izin ver'i seçin.

    • Çekme isteğinde görüntülenen bir Etkinlik akışı iletisi belirtebilirsiniz.

  3. Kaydet’i seçin.

Belirli dizinler ve dosyalar için repo içinde gözden geçirenleri seçin.

Yolu ve gerekli gözden geçirenleri girin

Bu gözden geçirenler, bu yollarda dosyaları değiştiren çekme isteklerine otomatik olarak eklenir. Etkinlik akışı iletisi de belirtebilirsiniz.

Otomatik gözden geçirenler ekleme

Gerekli'yiseçersanız, çekme isteği aşağıdakilere kadar tamamlanamadı:

  • Yol için gözden geçiren olarak eklenen her kullanıcı değişiklikleri onaylar.
  • Yola eklenen her gruptaki en az bir kişi değişiklikleri onaylar.
  • Yola eklenen her grup için belirtilen gözden geçiren sayısı değişiklikleri onaylar.

Gerekli gözden geçirenler otomatik olarak eklenir

Gözden geçirenleri otomatik olarak eklemek ancak çekme isteğini tamamlamak için onaylarını gerektirmeyenler için İsteğe Bağlı'ya tıklayın.

İstektelayanlar kendi değişikliklerini onaylar öğesini seçin.

Tüm gerekli gözden geçirenler kodu onaylıyorsa, çekme isteğini tamamabilirsiniz.

Çekme isteği durumu gözden geçirenlerin onay olduğunu gösteriyor

Dal ilkelerini atlama

Bazı durumlarda, ilke gereksinimlerini atlamamız gerekir. Atlama izinleri, değişiklikleri doğrudan bir dala veya dal ilkelerini karşılamadan çekme isteklerini tamamlamaya izin verin. Bir kullanıcı veya gruba atlama izinleri veebilirsiniz. Projenin tamamına, bir repoya veya tek bir dala atlama izinlerini kapsam olarak kullanabilirsiniz.

İki izin, kullanıcıların farklı yollarla dal ilkesi atlamasına olanak sağlar:

  • Çekme isteklerini tamamlarken atlama ilkeleri yalnızca çekme isteğinin tamamlanması için geçerlidir. Bu izine sahip kullanıcılar, çekme istekleri ilkeleri karşılamasa bile çekme isteklerini tamamlar.

  • Itme yapılırken atlama ilkeleri, yerel depolardan yapılan itmeler ve web üzerinde yapılan düzenlemeler için geçerlidir. Bu izine sahip kullanıcılar, ilke gereksinimlerini karşılamadan değişiklikleri doğrudan korumalı dallara iter.

İlke zorlama izinlerini atlamayı gösteren ekran görüntüsü.

Bu izinleri yönetme hakkında daha fazla bilgi için bkz. Git izinleri.

TFS 2015 ile TFS 2018 Güncelleştirme 2'de İlke zorlamadan muaf etme izni, bu izine sahip kullanıcıların aşağıdaki eylemleri gerçekleştirmesini sağlar:

  • Çekme isteğini tamamlarken, geçerli dal ilkeleri kümesi karşılanmazsa bile ilkeleri geçersiz kılmayı ve bir çekme isteğini tamamla'ya kabul.
  • Dal ilkeleri ayarlanmış olsa bile doğrudan bir dala itin. Bu izine sahip bir kullanıcı dal ilkesi geçersiz kılacaktır bir anında iletişimde, geri kabul adımı veya uyarı olmadan otomatik olarak dal ilkesi atlar unutmayın.

Önemli

Başta repo ve proje düzeylerinde olmak üzere ilkeleri atlama yeteneği sağlarken dikkatli olun. İlkeler, güvenli ve uyumlu kaynak kodu yönetiminin bir temel taşıdır.

Yol filtreleri

Birçok dal ilkesi yol filtreleri sunar. Bir yol filtresi ayarlandıysa, ilke yalnızca yol filtresiyle eşleşen dosyalar için geçerlidir. Bu alanı boş bırakmak, ilkenin daldaki tüm dosyalar için geçerli olduğu anlamına gelir.

Mutlak yollar ve joker karakterler belirtebilirsiniz. Örnekler:

  • /WebApp/Models/Data.cs
  • /WebApp/*
  • *.cs

Ayırıcı olarak kullanarak birden çok yol belirtebilirsiniz ; . Örnek:

  • /WebApp/Models/Data.cs;ClientApp/Models/Data.cs

Ön eki eklenen yollar, ! Aksi takdirde dahil edilmez. Örnek:

  • /WebApp/*;!/WebApp/Tests/*içindeki dosyalar hariç tüm dosyaları içerir /WebApp/WebApp/Tests
  • !/WebApp/Tests/* İlk olarak hiçbir şey dahil olmadığı için hiçbir dosya belirtir

Filtrelerin sırası önemlidir. Filtreler soldan sağa uygulanır.

soru & -cevap

Değişiklikleri doğrudan dal ilkelerine sahip dallara gönderebilir miyim?

Dal ilkelerini atlamaizinleriniz olmadığı takdirde, değişiklikleri doğrudan gerekli dal ilkelerine sahip dallara gönderemezsiniz. Bu Dallardaki değişiklikler yalnızca çekme istekleriaracılığıyla yapılabilir. Gerekli dal ilkeleri yoksa, değişiklikleri doğrudan isteğe bağlı dal ilkelerine sahip dallara gönderebilirsiniz.

Otomatik tamamlama nedir?

Yapılandırılmış dal ilkeleri olan dallara çekme istekleri, Otomatik tamamlamayı ayarla düğmesine sahiptir. Çekme isteğini tüm ilkeleri yerine getirdikten sonra otomatik olarak gerçekleştirmek için bu seçeneği belirleyin. Değişikliklerle ilgili herhangi bir sorun beklenmezseniz otomatik tamamlama yararlı olur.

Dal ilkesi koşulları ne zaman denetlenir?

Çekme isteği sahipleri değişiklikleri geldiğinde ve gözden geçirenler oylandığınızda dal ilkeleri sunucuda yeniden değerlendirilecektir. Bir ilke bir derlemeyi tetiklerse derleme durumu, derleme tamamlanana kadar bekliyor olarak ayarlanır.

Dal ilkelerinde XAML derleme tanımlarını kullanabilir miyim?

Hayır, dal ilkelerinde XAML derleme tanımlarını kullanamazsınız.

Gerekli kod gözden geçirenler için hangi joker karakter kullanabilirim?

Tek yıldız işaretleri * , hem eğik çizgi hem de / ters eğik çizgi dahil olmak üzere herhangi bir sayıda karakterle eşleşir \ . Soru işaretleri ? herhangi bir tek karakterle eşleşir.

Örnekler:

  • *.sql*.sql uzantısına sahip tüm dosyaları eşleştirir.
  • /ConsoleApplication/*/ConsoleApplication/*adlı klasörün altındaki tüm dosyaları eşleştirir.
  • /.gitattributes Deponun kökündeki /.gitattributes dosyası ile eşleşir.
  • */.gitignore Depodaki herhangi bir */.gitignore dosyasıyla eşleşir.

Gerekli kod gözden geçiren yolları büyük/küçük harfe duyarlıdır mi?

Hayır, dal ilkeleri büyük/küçük harfe duyarlı değildir.

Birden çok kullanıcıyı gerekli gözden geçirenler olarak nasıl yapılandırabilirim, ancak bunlardan yalnızca birini onaylaması gerekir mi?

Kullanıcıları bir gruba ekleyebilirve sonra grubu gözden geçiren olarak ekleyebilirsiniz. Grubun herhangi bir üyesi, ilke gereksinimini karşılamak için daha sonra onaylayabilir.

Atlama İlkesi izinleri var. Neden hala çekme isteği durumunda ilke başarısızlıklarını görmem gerekiyor?

Yapılandırılmış ilkeler, çekme isteği değişiklikleri için her zaman değerlendirilir. Atlama ilkesi izinlerine sahip olan kullanıcılar için, bildirilen ilke durumu yalnızca Danışma amaçlıdır. Atlama izinleri olan Kullanıcı onayladığında, başarısızlık durumu çekme isteği tamamlamayı engellemez.

"İsteklerin kendi değişikliklerini onaylamasına Izin ver" olarak ayarlandıysa kendi çekme isteklerimi neden tamamlayamıyorum?

Her ikisi de Minimum gözden geçiren sayısı Ilkesi gerektirir ve otomatik olarak eklenen gözden geçirenler ilkesi, isteyicilerinkendi değişikliklerini onaylamasına izin verenseçeneklere sahiptir. Her ilkede, ayar yalnızca bu ilke için geçerlidir. Ayar diğer ilkeyi etkilemez.

Örneğin, çekme isteğiniz Aşağıdaki ilkeler kümesine sahiptir:

  • Minimum gözden geçiren sayısı için en az bir gözden geçiren gerekir.
  • Otomatik olarak eklenen gözden geçirenler sizin veya gözden geçiren olarak kullandığınız bir ekip gerektirir.
  • Otomatik olarak eklenen gözden geçirenler , isteyicilerin kendi değişikliklerinin etkin olduğunu onaylamasını sağlar .
  • Gerekli olan en az sayıda gözden geçiren, istek sayısının kendi değişikliklerini onaylamasını sağlar .

Bu durumda, onaylamanız otomatik olarak gözden geçirenler içerir, ancak en az sayıda gözden geçiren gerektirmez, çekme isteğini tamamlayamazsınız.

Ayrıca, bazı ileticikendi değişikliklerini onaylamasını engelle gibi başka ilkeler de olabilir. bu da, isteyicilerinin kendi değişikliklerini onaylamasına izin ver ayarı ayarlanmış olsa bile, kendi değişikliklerinizi onaylamayı önler.