Git'in en güçlü özelliklerinden biri hafif dallarıdır. Paralel gelişim aşamalarında verimli bir şekilde çalışmanıza izin verir. Bir geliştirici, ayrı hatalar için ayrı dallar bile oluşturabilir. Hem zamanda hem de mekanda, dallar neredeyse maliyetsizdir.
Çoğu git iş akışı hem uzun vadeli hem de geçici dallarla ilgilenir. Bu nedenle, genellikle geliştirme sırasında dalları silmeye ihtiyaç vardır. Zaman zaman paylaşılan dalları uzak bir sunucudan ve yerel şubelerden silmeye ihtiyaç duyulur.
Neden Bir Şubeyi Silmelisiniz?
Birincisi, eğer hala git ile başa çıkmak, bir şube oluşturup ihtiyacınız olmadığına karar vermeniz oldukça yüksek bir ihtimal. Ya da dallarla deneyler yapıyor ve peşinizden gitmek istiyor olabilirsiniz. Git'te dallanma hafif bir işlem olduğu için bu iyidir. Çok hızlıdır ve disk alanını verimli kullanır.
Bu makalede, kodunuzu dallara ayırmanın ne anlama geldiğine, nasıl yapılacağına ve "ana" git dalındaki güncellemeleri yönetmenin yollarına bakacağız.
Sonuç olarak, birçok git geliştirme iş akışı, çok küçük veya kısa görevler için bile dallanmayı teşvik eder. Örneğin, yaygın bir strateji, bir şube oluştur tek bir hata düzeltmesi için. Bu, tek bir yazarın tek bir dosyada tek satırlık bir değişiklik yapmasını gerektirse bile geçerlidir.
Bu nedenlerle şubelerin oluşturulması ve silinmesi iyi anlaşılması gereken işlemlerdir. Tipik bir geliştirme iş akışı sırasında kendinizi sık sık dalları silerken bulabilirsiniz.
Dalları Olan Örnek Bir Depo
Aşağıdaki örnekler, aşağıdaki yapıya sahip örnek bir depoya atıfta bulunur:
$ git şube -vv
1 dev 1ae41e8 [kaynak / dev] ilk işleme
2 * ana 1ae41e8 [başlangıç / ana] ilk kesinleştirme
Her yerel şubenin, uzaktan kumandadan karşılık gelen bir yukarı akış dalına sahip olduğunu unutmayın: Menşei.
Komut Satırını Kullanarak Bir Şubeyi Silme
Bir dalı silmek için temel komut sözdizimi şöyledir:
git dalı (-d | -D) [-r] ...
Komutun en basit şekli, tüm değişikliklerinin birleştirilmesi koşuluyla yerel bir şubeyi siler:
$ git şube -d dev
Şu anda aktif olan şubeyi silemezsiniz; Bunu yapmaya çalışırsanız, şöyle bir mesaj alırsınız:
hata: '/ tmp / sandbox' adresinde teslim alınan 'main' dalı silinemiyor
İşler yolunda gittiğinde, bir onay mesajı göreceksiniz:
Şube dev'i silindi (1ae41e8 idi).
Yalnızca yerel olarak var olan ve birleştirilmemiş değişikliklerle bir dalı silerseniz, bu değişiklikleri kaybedersiniz. Bu nedenle git, böyle bir durumda varsayılan olarak bir dalı silmeyi reddeder:
hata: "dev" dalı tam olarak birleştirilmedi.
Onu silmek istediğinizden eminseniz, 'git branch -D dev' komutunu çalıştırın.
Hata mesajının bildirdiği gibi, silmeye zorlayabilirsiniz. -D bayrak. Ancak git, uzaktan varsa, birleştirilmemiş bir yerel şubeyi silmenize izin verir:
uyarı: ile birleştirilen "dev" dalını silme
"refs / remotes / origin / dev", ancak henüz HEAD ile birleştirilmedi.
Dal devi silindi (9a6d20b idi).
Uzak bir dalı silmek oldukça farklıdır. Kullanacaksınız git itme ile birlikte komut -d silinecek bayrak. Bundan sonra, uzaktan kumandanın adını verin (genellikle Menşei) ve şube adı:
$ git push -d kaynak geliştirici
Github.com'a: bobbykjack / sandbox.git
- [silindi] geliştirici
GitHub Desktop ile Yerel ve Uzak Dalları Silme
Komut satırı git programının aksine, GitHub’ın masaüstü uygulaması sadece aktif dalı silmenize izin verir. Bu işlemi şu yolla gerçekleştirebilirsiniz: Şube menüsünü seçerek Silme seçenek ve onaylama:
GitHub Desktop, varsayılan dalı silmenize izin vermez — ör. main - git'in kendisi bunu desteklese bile. Varsayılan dal şu anda etkin olan dalsa, uygulama menü eylemini devre dışı bırakır.
Dal aynı zamanda uzak bir dalı temsil ediyorsa GitHub Desktop, onu uzaktan kumandadan da silme seçeneği sunar:
GitKraken Kullanarak Dalları Silme
GitKraken deponuzun yerel ve uzak dallarını sol taraftaki kenar çubuğunda görüntüler. Her birini silmelisin ayrı ayrı.
Uygun şube adının üzerine gelin ve Şube üç dikey noktaya benzeyen işlemler menüsü. Menüden seçin Silme :
Bunun yıkıcı bir işlem olduğunu bildiren bir onay mesajı göreceksiniz. İle devam etmek istediğinizi onaylayabilirsiniz. Silme buton:
Git komut satırı programının varsayılan davranışını yansıtarak, önce sildiğinizden başka bir dala geçmelisiniz.. Aksi takdirde, bir hata mesajı görürsünüz:
Tower Kullanarak Yerel ve Uzak Şubeleri Silme
İle bir dalı silme Kule GitKraken ile bir dalı silmeye çok benzer. Yerel ve uzak şubeler, sol taraftaki bir panelde gösterilir. Herhangi bir dala sağ tıklayın ve içerik menüsünden Sil seçeneğini seçin:
Önemli bir fark, onay sırasında uzak bir şubenin yerel şubesiyle birlikte silinebilmesidir:
GitHub'da bir Dal Silme
GitHub yalnızca uzak bir kaynak görevi görür, bu nedenle varsayılan olarak uzaktaki dallar vardır. GitHub web sitesini kullanarak bir dalı silerseniz, buradaki diğer yöntemlerden birini kullanarak ilgili yerel şubeyi silmeniz gerekir.
GitHub Desktop uygulamasında olduğu gibi, GitHub web sitesi varsayılan dalı silmenize izin vermeyecektir. Seçenek basitçe görünmüyor. Yine de bir dalı silmek basittir. Depodan Kod sayfasını tıklayın şubeler bağlantısını tıklayın, silinecek şubeyi bulun ve ardından Bu şubeyi sil çöp tenekesine benzeyen simgesi:
Birleştirilmemiş değişiklikler için herhangi bir kontrol olmadığını unutmayın, bu nedenle GitHub'da dal derhal silinecektir. Ancak, her zaman uzak bir dalı temsil edeceğinden, beklediğiniz davranış bu olmalıdır.
Silme işleminden sonra bir düğme göreceğinizi unutmayın. Onarmak Şube. Ancak, yanlışlıkla sil simgesine tıklarsanız bu, yararlı bir geri alma özelliğidir. Buna güvenmeyin, çünkü sayfayı yenilediğinizde veya sayfadan uzaklaştığınızda, seçeneği kaybedeceksiniz!
Bitbucket'ta Yerel ve Uzak Dalları Silme
Bitbucket, GitHub gibi, varsayılan dalı silmenize izin vermez. Bitbucket buna Ana dal içinde Kod deposu ayarları. Listelenen diğer şubeleri silebilirsiniz. Şubeler sekmesi, karşılık gelen Hareketler Menü:
Büyük bir temizleme işlemi yapıyorsanız, aynı anda birden fazla dalı silebilirsiniz:
Dalları Silme, Tipik Bir Git İş Akışının Parçasıdır
Git dalları, özellikle yerel, uzak ve izleme dallarıyla iş akışınızı karmaşıklaştırabilir. Ancak basit günlük geliştirme için, büyük olasılıkla her zaman yerel şubeler oluşturuyor ve siliyor olacaksınız. Bu, alışmanız gereken tipik bir git iş akışının temel bir yönüdür.
Bu makalede, kodunuzu dallara ayırmanın ne anlama geldiğine, nasıl yapılacağına ve "ana" git dalındaki güncellemeleri yönetmenin yollarına bakacağız.
- Programlama
- GitHub

Bobby, yirmi yılın büyük bir bölümünde yazılım geliştirici olarak çalışan bir teknoloji meraklısıdır. Switch Player Magazine'de İnceleme Editörü olarak çalışarak oyun oynama konusunda tutkulu ve çevrimiçi yayıncılık ve web geliştirmenin tüm yönlerine dalmış durumda.
Haber bültenimize abone ol
Teknoloji ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için haber bültenimize katılın!
Bir adım daha…!
Lütfen size az önce gönderdiğimiz e-postadaki e-posta adresinizi onaylayın.