2 min read

Git Branch'lerini Yerel ve Uzaktan Nasıl Silebilirim?

Özet:

  • Uzaktan silmek için: git push -d <remote_name> <branchname>
  • Yerel silmek için: git branch -d <branchname>
  • Not: Çoğu durumda <remote_name> değeri origin olacaktır.

Yerel Branch'ı Silme Yerel branch'ı silmek için aşağıdaki komutlardan birini kullanabilirsiniz:

git branch -d <branch_name>
git branch -D <branch_name>
  • -d seçeneği, branch'ın yalnızca yukarıdaki branch ile tamamen birleştirilmişse silinmesini sağlayan --delete seçeneğinin takma adıdır.
  • -D seçeneği, branch'ın "birleşim durumuna bakılmaksızın" silinmesini sağlayan --delete --force seçeneğinin takma adıdır. (Kaynak: man git-branch)
  • Git v2.3 itibarıyla, git branch -d (silme) komutu -f (zorla) bayrağını dikkate almayı öğrendi.
  • Geçerli seçili branch'ı silmeye çalışırsanız bir hata alırsınız.

Uzak Branch'ı Silme Git v1.7.0 itibarıyla, uzaktaki bir branch'ı silmek için şu komutu kullanabilirsiniz:

git push <remote_name> --delete <branch_name>

Bu, hatırlaması daha kolay bir komut olabilir, önceki yöntem olan:

git push <remote_name> :<branch_name>

Git v1.5.0'da "uzaktaki bir branch'ı veya etiketi silmek için" eklenmiştir.

Git v2.8.0'dan itibaren, -d seçeneğini --delete için bir takma ad olarak kullanarak git push ile de uzaktan branch silebilirsiniz. Bu nedenle, yüklü olan Git sürümünüz, daha kolay veya daha zor söz dizimini kullanmanız gerektiğini belirleyecektir.


Uzak Branch Silme [5 Ocak 2010'dan Orijinal Cevap] Scott Chacon'un Pro Git kitabının 3. bölümünden:

Uzak Branch'ları Silmek Bir uzaktaki branch ile işiniz bittiğinde — diyelim ki, siz ve iş arkadaşlarınız bir özellik üzerinde çalıştınız ve bunu uzaktaki ana branch'ınıza (veya kararlı kod satırınızdaki herhangi bir branch) birleştirdiniz. Şu komutu kullanarak uzaktaki bir branch'ı silebilirsiniz:

git push origin :serverfix

Bu komut, sunucunuzdaki serverfix branch'ını siler.

To git@github.com:schacon/simplegit.git
 - [deleted]         serverfix

Boom. Artık sunucunuzda branch kalmadı. Bu sayfayı favorilerinize eklemek isteyebilirsiniz çünkü bu komutu kullanmanız gerekecek ve söz dizimini unutmanız muhtemel. Bu komutu hatırlamanın bir yolu, biraz önce geçtiklerimiz gibi git push [remotename] [localbranch]:[remotebranch] söz dizimini hatırlamaktır. [localbranch] kısmını atladığınızda, "Tarafımda hiçbir şey almayın ve bunu [remotebranch] yapın." demektesiniz.

git push origin :bugfix komutunu çalıştırdım ve mükemmel bir şekilde çalıştı.

Son olarak, değişiklikleri yaymak için diğer makinelerde aşağıdaki komutu çalıştırın:

# Tüm uzaklardan değişiklikleri al ve yerelde
# silinen branch'ları/etiketleri vb. sil
# --prune işini görecektir
git fetch --all --prune

Umarım bu bilgiler işinize yarar!