Test yayımlama 12/16
Depodaki diğer dalları etkilemeden geliştirme çalışmalarını yalıtmak için bir dal kullanın. Her deponun bir varsayılan dalı vardır ve birden çok dal daha olabilir. Çekme isteği kullanarak bir dalı başka bir dalla birleştirebilirsiniz.
|
Bu makalede |
|
|---|---|
Dallar hakkında
Dallar, deponuzun kapsanan bir alanında özellik geliştirmenize, hataları düzeltmenize veya yeni fikirlerle güvenli bir şekilde denemenize olanak sağlar.
Her zaman var olan bir daldan bir dal oluşturursunuz. Genellikle, deponuzun varsayılan dalından yeni bir dal oluşturabilirsiniz. Daha sonra bu yeni dal üzerinde diğer kişilerin depoda yaptığı değişikliklerden yalıtılarak çalışabilirsiniz. Özellik oluşturmak için oluşturduğunuz dal genellikle özellik dalı veya konu dalı olarak adlandırılır. Daha fazla bilgi için bkz. "Deponuzda dal oluşturma ve silme."
GitHub Pages sitesini yayımlamak için dalı kullanabilirsiniz. Daha fazla bilgi için bkz. "GitHub Sayfaları Hakkında."
Bir dal oluşturmak, çekme isteği açmak veya çekme isteğindeki dalları silmek ve geri yüklemek için depoya yazma erişiminiz olmalıdır. Daha fazla bilgi için bkz. "GitHub'da erişim izinleri."
Varsayılan dal hakkında
GitHub'da içerik içeren bir depo oluşturduğunuzda, GitHub depoyu tek bir dal ile oluşturur. Depodaki ilk dal varsayılan daldır. Varsayılan dal, GitHub'ın deponuzu ziyaret eden herkes tarafından görüntülediği daldır. Varsayılan dal, birisi depoyu kopyaladığında Git'in yerel olarak kullanıma alan ilk daldır. Farklı bir dal belirtmediğiniz sürece, depodaki varsayılan dal yeni çekme istekleri ve kod işlemeleri için temel daldır.
Varsayılan olarak GitHub, herhangi bir yeni depodaki varsayılan dalı ana olarak adlandır eder.
Mevcut bir deponun varsayılan dalını değiştirebilirsiniz. Daha fazla bilgi için bkz. "Varsayılan dalı değiştirme."
Yeni depolar için varsayılan dalın adını ayarlayabilirsiniz. Daha fazla bilgi için bkz. "Depolarınız için varsayılan dalı yönetme", "Kuruluşunuzdaki depolar için varsayılan dal adını yönetme" ve "Kurumsal hesabınızda depo yönetimi ilkelerini zorunlu tutma."
Dallarla çalışma
Çalışmanızdan memnun olduktan sonra, geçerli daldaki (baş dal) değişiklikleri başka bir dalda (temel dal) birleştirmek için bir çekme isteği açabilirsiniz. Daha fazla bilgi için bkz. "Çekme istekleri hakkında."
Çekme isteği birleştirildikten veya kapatıldıktan sonra, artık gerekli olmadığından baş dalı silebilirsiniz. Dalları silmek için depoda yazma erişiminiz olmalıdır. Doğrudan açık çekme istekleriyle ilişkili dalları silemezsiniz. Daha fazla bilgi için bkz. "Çekme isteğindeki dalları silme ve geri yükleme"
Çekme isteği birleştirildikten sonra bir baş dalı silerseniz GitHub, silinen dalı temel dalı olarak belirten aynı depodaki tüm açık çekme isteklerini denetler. GitHub, bu tür çekme isteklerini otomatik olarak güncelleştirir ve temel dalını birleştirilmiş çekme isteğinin temel dalı olarak değiştirir. Aşağıdaki diyagramlarda bu gösterilmektedir.
Burada birisi ana daldan feature1 adlı bir dal oluşturmuş ve siz de feature1'denfeature2 adlı bir dal oluşturmuşsunuz. Her iki dal için de açık çekme istekleri vardır. Oklar, her çekme isteği için geçerli temel dalı gösterir. Bu noktada feature1, feature2 için temel daldır. Feature2 için çekme isteği şimdi birleştirilirse feature2 dalı feature1 ile birleştirilir.
Sonraki diyagramda, biri feature1 için çekme isteğini ana dalla birleştirdi ve feature1 dalını sildi. Sonuç olarak GitHub, özellik2 için çekme isteğini otomatik olarak yeniden hedeflemiştir, böylece temel dalı artık ana daldır.
Şimdi feature2 çekme isteğini birleştirdiğinizde, bu istek ana dalda birleştirilir.
Korumalı dallarla çalışma
Depo yöneticileri bir dalda korumaları etkinleştirebilir. Korumalı bir dal üzerinde çalışıyorsanız, dalı silemez veya zorla gönderemezsiniz. Depo yöneticileri ayrıca bir dal birleştirilmeden önce çeşitli iş akışlarını zorunlu kılmak için diğer birçok korumalı dal ayarını etkinleştirebilir.
Not: Depo yöneticisiyseniz, dal korumaları "Yöneticileri dahil et" olarak ayarlanmadığı sürece, çekme isteği gereksinimleri karşılamasa bile dal korumaları etkinleştirilmiş dallardaki çekme isteklerini birleştirebilirsiniz.
Çekme isteğinizin birleştirilip birleştirilmediğini görmek için çekme isteğininConversation sekmesinin altındaki birleştirme kutusuna bakın. Daha fazla bilgi için bkz. "Korumalı dallar hakkında."
Bir dal korunduğunda:
-
Dala göndermeyi silemez veya zorlayamazsınız.
-
Dalda gerekli durum denetimleri etkinleştirildiyse, tüm gerekli CI testleri geçene kadar değişiklikleri dalla birleştiremezsiniz. Daha fazla bilgi için bkz. "Durum denetimleri hakkında."
-
Dalda gerekli çekme isteği gözden geçirmeleri etkinleştirildiyse, çekme isteği gözden geçirme ilkesindeki tüm gereksinimler karşılanıncaya kadar değişiklikleri dalla birleştiremezsiniz. Daha fazla bilgi için bkz. "Çekme isteğini birleştirme."
-
Bir dalda kod sahibinden gerekli inceleme etkinleştirildiyse ve çekme isteği sahibi olan kodu değiştirirse, kod sahibinin birleştirilmeden önce çekme isteğini onaylaması gerekir. Daha fazla bilgi için bkz. "Kod sahipleri hakkında."
-
Bir dalda gerekli işleme imzalama etkinleştirildiyse, dala imzalanmamış ve doğrulanmamış hiçbir işleme gönderemezsiniz. Daha fazla bilgi için bkz. "İşleme imzası doğrulaması hakkında" ve "Korumalı dallar hakkında."
-
Korumalı bir daldan oluşturduğunuz çekme isteğinin çakışmalarını düzeltmek için GitHub'ın çakışma düzenleyicisini kullanırsanız GitHub, çakışmaları çözümlemenizin birleştirilebilmesi için çekme isteği için alternatif bir dal oluşturmanıza yardımcı olur. Daha fazla bilgi için bkz. "GitHub'da birleştirme çakışmasını çözme."
Daha fazla okuma
"Çekme istekleri hakkında"
GitHub sözlüğünde "Dal"