Bir etiketten yeni bir şube nasıl oluşturulur?


Yanıtlar:


877

Vay canına, bu düşündüğümden daha kolaydı:

git checkout -b newbranch v1.0

53
Doğru. Ayrıca, ana dalı yeni ile etiketin noktasına geri ayarlayabileceğinizi unutmayıngit reset --hard v1.0
— wadesworld

3
"<tag> geçerli bir taahhüt değil" veya benzer bir hata (genellikle paylaşılan bir depo üzerinde çalışırken) nedeniyle işe
— yaramazsa

6
@Wadesworld'ün önerisi işe yarayabilir, ancak kimse bunu okursa ve ana dalı sıfırlamanın ne anlama geldiğinden% 100 emin değilse , bunu yapmayın .
— Nathan Long

Bu, burada bulduğum daha iyi bir cevap - stackoverflow.com/a/35979751/3145960
— Reaz Murshed

101

Hemen değiştirmeden yeni bir dal oluşturmak istiyorsanız, aşağıdakileri yapabilirsiniz:

git branch newbranch v1.0

6
Bence bu tam olarak ne gerekiyorsa kabul edilen cevap olmalı. Kabul edilen cevap, soruda belirtilmeyen başka bir şey yapar.
— Javier Vazquez

40

Bir Tag'den yeni bir düzeltme dalı oluşturmak için aşağıdaki adımları kullandım.

Sözdizimi

git checkout -b <New Branch Name> <TAG Name>

Bunu yapmak için adımlar.

  1. git checkout -b YeniBrançAdı v1.0
  2. Pom / release sürümlerinde değişiklik yapma
  3. Sahne değişiklikleri
  4. git commit -m "Düzeltme dalı için pom sürümlerini güncelle"
  5. Son olarak yeni oluşturulan dalınızı uzak depoya aktarın.
git push -u origin NewBranchName

Umarım bu yardımcı olur.


17

Sorunu aşağıdaki gibi çözdüm 1. Etiketi şubenizden alın 2. Aşağıdaki komutu yazın

Example: git branch <Hotfix branch> <TAG>
    git branch hotfix_4.4.3 v4.4.3
    git checkout hotfix_4.4.3

veya diğer komutlarla yapabilirsiniz

git checkout -b <Hotfix branch> <TAG>
-b stands for creating new branch to local 

düzeltme dalınızla hazır olduğunuzda, o dalı github'a taşıma zamanı, aşağıdaki komutu yazarak yapabilirsiniz

git push --set-upstream origin hotfix_4.4.3

5

Aynı ada sahip bir etiketten şube oluşturmak istiyorsak durum biraz sorunlu hale geliyor .

Bu ve benzer senaryolarda, önemli olan bilmektir: dallar ve etiketler aslında .git/refsdizindeki tek satırlı metin dosyalarıdır ve aşağıdaki yollarını kullanarak bunlara açıkça başvurabiliriz .git. Şubeler, hayatımızı daha basit hale getirmek için burada "kafalar" olarak adlandırılıyor.

Böylece şubenin refs/heads/mastergerçek, açık adıdır master. Ve refs/tags/cicaadlı etiketin tam adıdır cica.

Adlı cicaetikette adlı bir şube oluşturmak için doğru komut cica:

git branch cica refs/tags/cica

4

Şube listem ( şimdi sadece master )

şube listesi

Etiket listem (üç etiket var)

etiket listesi

Yeni şube geçin özelliği / codec'i gelen opus_codec etiketi

git checkout -b feature/codec opus_codec

şubeye geç


2
Metin kopyalayıp yapıştırma da yeterliyse lütfen ekran görüntülerini kullanmayın.
— peterh - Monica
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.