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
Git deposu fork’ları, insanlar bir kod tabanında deneysel, riskli veya gizli değişiklikler yapmak istediklerinde yararlıdır, ancak bu değişikliklerin özgün depodaki kod tabanından izole edilmesi gerekir. Yeni bir fork, temelde orijinal deponun kaynak kodunu paylaşan yeni bir uzak depodur.
Bağımsız bir sürüm olarak, çatalınıza yaptığınız işlemeler veya dallar ekleme gibi değişiklikler özgün depodan gizlenir. Kod tabanı değişikliklerinizi özgün depoda birleştirmek istiyorsanız, bu değişikliklerin gözden geçirilmesini ve onaylanmasını istemek için bir çekme isteği (PR) oluşturmanız gerekir.
Çatal oluşturma işlemi hiçbir izni, ilkeyi veya derleme işlem hattını özgün depodan çatalınıza aktarmaz.
Bu makale, Azure Repos Git depolarındaki çatallarla çalışmayı ele alır ve GitHub depolarındaki Çatalların nasıl yönetileceğinin açıklandığı GitHub içeriğine bağlantılar sağlar.
Bu makalede şunları öğreneceksiniz:
- Çatallar arasında kod paylaşma
- Dallar ve çatallar arasında seçim yapma
- Repo forklarını etkinleştir
- Çatallama yap
- Çatalınızı yerel olarak kopyalama
- Fork'unuza yerel değişiklikleri gönderin
- Çekme isteğini oluştur ve tamamla
- Çatalınızı senkronize edin
Önkoşullar
| Kategori | Gereksinimler |
|---|---|
| Proje erişimi | projesiüyesi. |
| İzinler | - Özel projelerde kodu görüntüleme: En az Temel erişimi. - Özel projelerde kodu klonlama veya katkıda bulunma: Projede Katkıda Bulunanlar güvenlik grubuna üyelik veya ilgili izinler. - Dal veya depo izinlerini ayarlayın: izinleri yönetin dal veya depo için. - Varsayılan dalı değiştir: Depo için politika izinlerini düzenleyin. - Depoyu içeri aktarma: Proje Yöneticileri güvenlik grubunun üyesi veya Git proje düzeyi Depo oluşturma izni İzin verolarak ayarlanmıştır. Daha fazla bilgi için bkz . Git deposu izinlerini ayarlama. |
| Hizmetler | Repo'lar etkinleştirildi. |
| Araçlar | Opsiyonel. az repos komutlarını kullanın: Azure DevOps CLI. |
Not
Genel projelerde, Paydaş erişimi olan kullanıcılar, kod 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 | projesiüyesi. |
| İzinler | - Kodu görüntüle: En az Temel erişim. - Kodun bir kopyasını oluşturma veya koda katkıda bulunma: Katkıda Bulunanlar güvenlik grubunun üyesi veya projedeki ilgili izinlere sahip olma. |
| Hizmetler | Repo'lar etkinleştirildi. |
Çatallar arasında kod paylaşma
Özgün depo genellikle yukarı akış deposu olarak adlandırılır. Değişiklikleri her iki yönde birleştirmek için PR'ler oluşturabilirsiniz: çatal depodan ana depoya veya ana depodan çatal depoya. En yaygın yön çataldan yukarı akışa doğrudur. Hedef deponun izinleri, ilkeleri, yapılar ve iş öğeleri çekme isteğine uygulanacaktır.
Dallar ve çatallar arasında seçim yapma
2-5 geliştiriciden oluşan küçük bir ekip için, herkes özellik dallarında çalışabildiğinden ve dal politikaları varsayılan dalı koruyabildiğinden, çatal oluşturma iş akışı gerekli olmayabilir. Ancak ekibiniz bu düzeni aşıp büyüdüğünde, çatal oluşturma iş akışına geçebilir.
Deponuzda açık kaynak projelerinde olduğu gibi çok sayıda genel veya seyrek olarak katkıda bulunanlar varsa, çatal oluşturma iş akışını öneririz. Genellikle, yalnızca projenize katkıda bulunanların özgün deponuza doğrudan işleme hakları olmalıdır. Diğer ortak çalışanlar, önerilen değişiklikleri izole etmek için, ana katkıda bulunanlar çalışmalarını gözden geçirme şansına sahip olana kadar bir çatallama iş akışı kullanmalıdır.
Repo forklarını etkinleştir
Azure Repos Git deposunda çatalları etkinleştirmek için bkz Çatalları etkinleştirme.
GitHub deposunda çatalları etkinleştirmek için Kuruluşunuz için çatal oluşturma ilkesini yönetme bölümüne bakın.
Fork iş akışı
Çatallama iş akışı, aşağıdaki bölümlerde açıklanan bu beş adımdan oluşur.
- Çatal oluşturma
- Çatalınızı yerel olarak kopyalayın
- Yerel değişiklikleri çatalınıza gönderin
- PR oluşturma ve tamamlama
- Çatalınızı senkronize edin
Çatallama yap
Azure Repos Git deposunu fork yapma adımları aşağıda açıklanmıştır.
Not
Azure DevOps projesinde bir depoyu çatallamak için, ilgili proje için Depo Oluşturma iznine sahip olun. Repo sahipleri, forklar için ayrılmış bir proje oluşturmayı ve depo oluşturma yetkisini tüm katkıda bulunanlara atamayı düşünmelidir. İzinleri ayarlama hakkında daha fazla bilgi için bkz . Git deposu izinlerini ayarlama.
Web tarayıcınızdan, çatallamak istediğiniz Azure Repos Git deposuna gidin. >'nı seçin ve üç nokta menüsünden Çatalla'yı seçerek Çatalla iletişim kutusunu açın.
Çatal iletişim kutusunda çatallı depoyu adlandırın, çatalın oluşturulmasını istediğiniz projeyi seçin, çatala eklenecek dalları seçin ve ardından Çatal'ı seçin. Çatalın tüm dalları mı yoksa yalnızca varsayılan dalı mı içereceğini belirtebilirsiniz. Depo birkaç konu dalı içeriyorsa, çatalınıza yalnızca varsayılan dalı eklemeyi göz önünde bulundurun.
GitHub deposunu kopyalama hakkında bilgi için Depo kopyalama kısmına bakın.
Çatalınızı yerel olarak kopyalama
Depoyu çataldıktan sonra, çatalınızı bilgisayarınızda bir klasörde yerel bir kopya oluşturmak için klonlayın. Komut satırından veya Visual Studio gibi bir IDE kullanarak kopyalayabilirsiniz. Bir depoyu kopyalama hakkında daha fazla bilgi için bkz . Mevcut git deposunu kopyalama.
Uzak bir depoyu kopyaladığınızda Git, kopyaladığınız uzak deponun URL'si için diğer adı origin kısaltma olarak atar. Kolaylık olması için, yukarı akış deposu olarak adlandırılan, çatalladığınız depo için adlı upstream başka bir diğer ad ekleyin. Aşağıdaki adımlarda bir upstream takma adın nasıl ekleneceği açıklanmaktadır.
İpucu
Kolaylık olması için Git komutlarınızda ilgili URL'ler yerine origin ve upstream adlarını kullanabilirsiniz.
Visual Studio'da bir upstream takma ad eklemek için şu adımları izleyin:
Seçenekler penceresini açmak için menü çubuğundan Araçlar Seçenekleri'ni>seçin. Kaynak Denetimi > Git Deposu Ayarları > UzakLar'ı seçin ve ardından Ekle'yi seçerek Uzak Ekle iletişim kutusunu açın.
Add Remote iletişim kutusunda,
upstreamolarak adlandırılan yeni bir uzak depo ekleyin ve çatal oluşturduğunuz deponun Git klon URL'sini girin. Ardından Kaydet'i seçin.
Fork'unuza yerel değişiklikleri gönderin
Çatal oluştururken, orijinal deponun kişisel bir sürümünü oluşturursunuz (orijinal depo "upstream" olarak adlandırılır). Çatal, üst daldan bağımsızdır, ancak kodu paylaşır ve üst dal ile bir bağlantı tutarak gelecekteki senkronizasyona olanak tanır. Bu nedenle, doğrudan yerel kopyanın main dalında çalışmanızı ve ardından bu işi çatalınızın dalına main göndermenizi engelleyecek bir şey yoktur. Ancak, işiniz için özellik dallarını kullanmak genellikle daha iyidir. Özellik dallarını kullanarak:
Birden çok bağımsız iş akışını aynı anda koruyabilirsiniz.
Başkalarının paylaştığınız işi anlamasını kolaylaştırırsınız çünkü bu çalışma dallara göre ayrı iş akışları halinde düzenlenmiştir.
Tipik bir Git iş akışı şu adımları içerir:
Yeni dalda değişiklik yapın ve çalışmanızı commit edin. Genellikle, kişiler bir özellik veya hata düzeltmesi üzerinde çalışırken birden çok işleme yapar.
Özellik veya hata düzeltme dalını forkunuza yükleyin. Çatalınızın takma adı
originvardır.
Değişikliklerinizi nasıl göndereceğiniz hakkında bilgi için Push ile kod paylaşımı bölümüne bakın.
Çekme isteğini oluştur ve tamamla
Azure Repos'ta, çatala ilettiğiniz değişiklikleri özgün depoda birleştirmek için şunları yapabilirsiniz:
Değişikliklerinizin gözden geçirilmesini ve onaylanmasını istemek için bir çekme isteğioluşturun. PR açtığınızda, kaynak dalını çatalınızdaki özellik veya hata düzeltme dalı olarak ayarlayın. Çekme isteği hedef dalı genellikle çatalladığınız deponun
maindalıdır. Bu depo yukarı akış deposu olarak adlandırılır veupstreamtakma adına sahiptir.Aşağıdaki ekran görüntüsünde kaynak depo ve dal ile Azure Repos'ta oluşturulan çekme isteğinin hedef deposu ve dalı gösterilmektedir.
Tarayıcınızı, Visual Studio'yu veya Azure DevOps CLI'sini kullanarak bir PR oluşturma hakkında daha fazla bilgi için, Create a PR başlığına bakın.
Önemli
Project Geçerli Kullanıcıları'ndaki ve yukarı akış deposunda okuma ve iznine sahip olan herkes buna bir çekme isteği gönderebilir. Yukarı akış deposunda çekme isteği oluşturulduğunda çalışacak şekilde yapılandırılmış bir derleme işlem hattı varsa, çekme isteğinizle sunulan değişiklikler üzerinde bir derleme çalıştırılır.
Çekme isteğinizin tamamlanması için, tüm gerekli gözden geçirenlerin çekme isteği değişikliklerini onaylaması ve tüm hedef dal politika gereksinimlerinin karşılanması gerekir. PR onayı ve tamamlanması üzerine, PR kaynak dalındaki değişiklikler PR hedef dalıyla birleştirilir.
GitHub çekme isteği oluşturma ve tamamlama hakkında bilgi için bkz. Çekme isteği oluşturma ve Çekme isteğini birleştirme.
Çatalınızı senkronize edin
PR, çatalınızdaki değişiklikleri upstream deposunun hedef dalı ile birleştirdikten sonra, ilgili yerel dalınızı hem kendi değişikliklerinizle hem de diğer katkıda bulunanlar tarafından yapılan değişikliklerle güncellemek için upstream deposunun hedef dalından çekebilirsiniz. Ardından, şunu yapmaya hazırsınız:
Güncelleştirilmiş yerel daldan yeni bir özellik veya hata düzeltme dalı oluşturun.
Güncelleştirilmiş yerel dalınızdan adresine göndererek
originçatalınızı güncelleştirin.
Genellikle yukarı akış deposunun hedef dalı main olur. Yerel main dalınızı doğrudan düzenlemiyorsanız (özellik dallarında çalışıyorsunuz), yukarı akış dalından çekme işlemi yerel dalınızı upstream/mainmain birleştirme çakışmaları olmadan güncelleştirir.