Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Visual Studio 2019 | Visual Studio 2022
Tavsiye
Azure DevOps görevlerine yardımcı olması için yapay zekayı kullanabilirsiniz. Başlamak için bkz. Azure DevOps MCP Sunucusu ile yapay zeka yardımlarını etkinleştirme .
Gerekli tüm gözden geçirenler çekme isteğinizi (PR) onayladıktan ve çekme isteği tüm dal ilkesi gereksinimlerini karşıladıktan sonra, değişikliklerinizi hedef dal ile birleştirip çekme isteğini tamamlayabilirsiniz. Veya PR'daki değişiklikleri uygulamama kararı alırsanız, PR'yi terk edebilirsiniz.
Gözden geçirenlerin değişikliklerini ele almak, gözden geçirme açıklamalarını yanıtlamak ve çözümlemek için bkz . Açıklamaları adresle.
Önkoşullar
| Kategori | Gereksinimler |
|---|---|
| Proje erişimi | Bir projenin üyesi. |
| İzinler | - Özel projelerde kodu görüntüleme: En azından Temel erişim. - Özel projelerde kod kopyalama veya koda katkıda bulunma: Katkıda Bulunanlar güvenlik grubunun üyesi veya projedeki ilgili izinler. - Dal veya depo izinlerini ayarlama: İzinleri yönetme , dal veya depo izinleridir. - Varsayılan dalı değiştir: İlkeleri düzenleme işlemi, depoya ilişkin izinleri belirler. - Bir depoyu içeri aktarma: Proje Yöneticileri güvenlik grubunun üyesi veya Git proje düzeyinde Depo oluşturma izni İzin Ver olarak ayarlanır. Daha fazla bilgi için bkz . Git deposu izinlerini ayarlama. |
| Hizmetler | Depolar etkinleştirildi. |
| Tools | Optional. Komutları kullanın az repos : Azure DevOps CLI. |
Not
Ortak projelerde Paydaş erişimi olan kullanıcılar, kodu görüntüleme, kopyalama ve koda katkıda bulunma dahil olmak üzere Azure Depolarına tam erişime sahiptir.
| Kategori | Gereksinimler |
|---|---|
| Proje erişimi | Bir projenin üyesi. |
| İzinler | - Kodu görüntüle: En azından Temel erişim. - Kodu kopyalama veya koda katkıda bulunma: Katkıda Bulunanlar güvenlik grubunun üyesi veya projedeki ilgili izinler. |
| Hizmetler | Depolar etkinleştirildi. |
İ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.
Azure DevOps Services'te, kullanarak Azure komut satırı arabiriminden azure-devops yönetebilirsiniz. Azure DevOps Services CLI ile çalışmayı öğrenmek için bkz . Azure DevOps CLI'yı kullanmaya başlama. Azure Repos CLI komutları PR'ler için az repos pr kullanıyor.
Birleştirme değişikliklerini kontrol etme
Çekme isteğini tamamladığınızda Git, ana dalın sonuna yeni bir birleştirme işlemesi ekler. Bu birleştirme commit'i, ana dalın ve PR kaynak dalının geçmişlerini bağlar. Önizleme birleştirme işlemesini görmek ve birleştirme çakışmalarını kontrol etmek için, bir PR Genel Bakış sayfasının sağ üst köşesindeki Diğer seçenekler menüsünü ve ardından Birleştirme değişikliklerini görüntüle'yi seçin.
Çekme isteğini oluşturduktan sonra hedef dalı değiştirdiyseniz, Birleştirmeyi Yeniden Başlat’ı seçerek yeni bir önizleme birleştirme işlemi oluşturun ve birleştirme değişikliği fark görünümünü güncelleyin.
Dal ilkelerini gözden geçirme
Ekipler, korumalı dallardaki PR'lerin birleştirilmeden önce belirli ölçütleri karşılamasını gerektiren dal ilkeleri ayarlayabilir. Çekme isteğinizde geçerli olan dal ilkelerini, birleştirme için gerekli olup olmadıklarını ve çekme isteğinizin başarılı olup olmadığını görebilirsiniz.
Çekme İsteği Genel Bakış sekmesi, çekme isteği için başarılı veya başarısız olan dal politikalarını özetler. Genel bakışta yalnızca başarısız ilkeler listelenir, ancak Tüm <n> denetimlerini görüntüle'yi seçerek tüm ilke denetimlerini görebilirsiniz.
PR Genel Bakış sayfasında, dal ilkesi gereksinimlerinde
simgesi bulunur.
Gereksinimin yanındaki Diğer seçenekler'i seçin ve ardından İlke Politikasını Görüntüle'yi seçerek Proje Ayarları'ndaki dalın Dal Politika Ayarları sayfasına gidin.
Çekme isteğini tamamla
Birleştirme çakışmalarını çözümledikten ve PR tüm dal politikalarını karşıladıktan ve gerekli onaylara sahip olduktan sonra PR'yi tamamlayabilirsiniz.
PR'yi tamamlamak için sağ üst köşeden Tamamla'yı seçin. İsterseniz, Tamamla düğmesinin yanındaki açılan oku seçin ve seçeneklerden birini belirleyin.
- Tamamla: PR’yi şimdi tamamlayın ve değişiklikleri hedef dala kaynaştırın.
- Otomatik tamamlama ayarla: PR'yi gerekli tüm dal ilkelerini karşıladığında tamamlayacak ve birleştirecek şekilde yapılandırın.
- Taslak olarak işaretle: Çekme isteğini taslak durumuna döndürerek tüm oyları kaldırın.
- Terk Etme: Değişiklikleri birleştirmeden çekme isteğini kapatın.
Çekme isteğini tamamla bölmesindeki Birleştirme türü altında birleştirme seçeneklerinden birini seçin.
- Birleştirme (hızlı ileri sarma olmadan): Tüm commit'leri koruyan doğrusal olmayan bir geçmiş ile birleştirme yapın.
- Squash commit: Tüm kaynak commit'leri hedef commit'te birleştiren doğrusal bir geçmişle birleştirin veya squash birleşmeleri. İşleme geçmişini kaynak daldan tutmadan hedef dal için yeni bir işleme oluşturulacağını unutmayın.
- Yeniden temel ve ileri sarma: Kaynak işlemelerini hedefe ve ileriye doğru yeniden temelleyin.
- Yarı doğrusal birleştirme: Kaynak değişikliklerini hedefe yeniden uygulayın ve iki ebeveynli bir birleştirme oluşturun.
Not
Mevcut ilkeler zorunlu kılındı. Örneğin, dalınızın şu anda "yalnızca squash birleştirme" ilkesi varsa, başka bir birleştirme türü kullanmak istiyorsanız bu ilkeyi değiştirmeniz gerekir.
Aşağıdaki tamamlama sonrası seçeneklerinden herhangi birini seçin. Bazı birleştirme türleri için bazı seçenekler kullanılamaz.
- Birleştirmeden sonra ilişkili iş öğelerini tamamlama: Bağlı iş öğelerini tamamlayın.
- Birleştirdikten sonra <dal adını> silin: PR'ın kaynak dalını birleştirdikten sonra silin.
- Birleştirme komutuyla ilgili özel ileti: Özel birleştirme komutuyla ilgili ileti ekleyin. Bu seçeneği seçerseniz birleştirme işleme iletisini güncelleştirin.
- Dal ilkelerini geçersiz kılın ve birleştirmeyi etkinleştirin. Çekme isteği dal ilkelerinin tümünü karşılamasa bile birleştirilmeyi zorla. Bu seçenek yalnızca politikadan muaf tutulma yetkiniz varsa kullanılabilir.
Birleştirmeyi tamamla seçeneğini seçin.
Birleştirmeyi tamamladığınızda, bağlı iş öğeleri PR tamamlanmasını göstermek için otomatik olarak güncellenir.
PR tamamlanırken yeniden temel alma
Çekme isteği tamamlama sırasında yeniden başlatmanın mümkün olmadığı birkaç durum vardır:
- Hedef dallardaki bir ilke "rebase" stratejilerinin kullanılmasını yasaklıyorsa, "rebase" yapmak için dal ilkelerini geçersiz kılma iznine sahip olmanız gerekir.
- PR kaynak dalının ilkeleri varsa, yeniden temel alamazsınız. Taban aralığı değiştirme, politika onay sürecinden geçmeden kaynak dalını değiştirir.
- Birleştirme Çakışması Uzantısı'nı birleştirme çakışmalarını çözmek için kullandıysanız yeniden temel alamazsınız. Üç yönlü birleştirmeye uygulanan çakışma çözümleri, tüm çekme isteği taahhütlerini ayrı ayrı yeniden sıralarken nadiren başarılı veya geçerli olur.
Tüm bu durumlarda, dalınızı yerel olarak yeniden düzenleyip ardından uzak depoya gönderebilir veya PR'ı tamamladığınızda değişikliklerinizi squash ederek birleştirebilirsiniz.
Birden çok birleştirme tabanı sorunu
Bazı durumlarda bir PR birden fazla gerçek birleştirme tabanına sahip olabilir ve bu durum güvenlik sorunlarına yol açabilir. Çekme isteğindeki dosyaların birleştirme tabanları içinde farklı sürümleri varsa, birden çok birleştirme tabanı uyarısı verilir. Daha fazla bilgi ve düzeltme için Birden Çok Birleştirme Temeli'ne bakın.
Birleştirme çakışmalarını çözmek
Dalınızdaki dosya değişiklikleri başka bir daldaki değişikliklerle çakışabilir. Nasıl birleştirileceği net olmadığında, Git, çekme isteğinin Genel Bakış sayfasında çakışan dosyaları gösterir. PR veya otomatik tamamlama ayarlarını yapmadan önce, PR dalı ile hedef dal arasındaki birleştirme çakışmalarını çözmeniz gerekir. Birleştirme çakışmalarını çözme yönergeleri için bkz . Birleştirme çakışmalarını çözme.
Otomatik tamamlama için çekme isteği oluşturma
Koşullar tüm dal ilkelerini karşıladığında çekme isteği değişikliklerini tamamlamak ve birleştirmek için Tamamla açılır listesinden Otomatik tamamlama ayarla'yı seçin. PR (çekme isteği) tamamlandığında bir e-posta bildirimi alırsınız. Bir çakışma veya hata, PR'nin tamamlanmasını engelliyorsa, sorun hakkında sizi bir e-posta bilgilendirir.
Not
Otomatik tamamlama ayarla seçeneği, dal ilkeleriniz olduğunda Azure Repos ve TFS 2017 ve üzeri sürümlerde kullanılabilir. Otomatik tamamlamayı ayarla seçeneğini görmüyorsanız dal politikalarınız yok. Daha fazla bilgi için bkz . Dal ilkeleri.
Varsayılan olarak, otomatik tamamlanacak şekilde ayarlanmış bir pull request yalnızca gerekli ilkelerde bekler. Otomatik tamamlamayı etkinleştir panelinde isteğe bağlı ilkeleri beklemeyi de seçebilirsiniz.
TFS 2018 Güncelleştirme 2'den başlayarak, Genel Bakış sayfası PR'nin beklediği tüm ilke kriterlerinin listesini görüntüler. Otomatik tamamlamayı etkinleştir panelinde gerekli olacak şekilde bir ilke ayarladıysanız, Genel Bakış sayfasında ilkeyi isteğe bağlı olarak ayarlayabilirsiniz.
Otomatik tamamlama'yı kapatmak için Otomatik tamamlamayı iptal et'i seçin.
Otomatik tamamlamaya ayarlanmış bir çekme isteği, otomatik tamamlama rozeti ile Çekme istekleri sayfasında gösterilir.
Çekme isteğini iptal etme veya yeniden etkinleştirme
Değişikliklerinizi ve çekme isteğinizi birleştirmeden bırakmak için, Tamamla düğmesindeki açılan listeden Bırak'ı seçebilirsiniz. Terk edilen çekme isteğini görüntülemeye devam edebilirsiniz ve iş öğeleriyle ilişkilendirilmeye devam eder.
Bırakılan bir çekme isteğini istediğiniz zaman yeniden etkinleştirmek için Bırakılan sekmesindeki Çekme İsteği görünümünü açın ve sağ üst köşedeki Yeniden Etkinleştir'i seçin.
Tamamlanmış çekme isteğini geri alma
Çekme isteğindeki değişiklikleri geri döndürmek için şu adımları izleyin. Daha fazla bilgi için bkz Değişiklikleri geri alma.
Tamamlanan çekme isteğini açın ve Geri Al'ı seçin. Bu eylem, deponuzdaki mevcut bir hedef dalda çekme isteğiyle yapılan değişiklikleri geri alan bir dizi değişiklik içeren yeni bir dal oluşturur.
Çekme isteğini geri al bölmesinde:
- Hedef dal altında PR değişikliklerini geri almak istediğiniz dalı seçin.
- Konu dal adı gerekli altında, çekme isteği dalının adını geri alma işlemi yapacaksanız değiştirin.
- Geri Al'ı seçin.
Yeni çekme isteği ekranında Oluştur'u seçin.
Geri döndürme işlemini tamamlamak için yeni pull request'i birleştirin.
Not
Bu geri döndürme işlemi sırasında oluşturulan dal, özgün çekme isteğindeki tüm dosya değişikliklerini geri alan tek bir işlemeye sahiptir. Dal, orijinal PR'deki commit'lerin her biri için geri alınmış bir commit içermez.