GitHub ile mevcut bir depoyu eklerken tüm dalları nasıl itebilirim?


125

Yeni bir GitHub deposu oluşturdum - mevcut depomu oraya koymak istiyorum.
Talimatları takip ettim:

cd existing_git_repo
git remote add origin git@github.com:acme-org/myprj.git
git push origin master

Bu yalnızca ana dalı GitHub'a iter.
Mevcut depomdaki her şeyi (tüm şubeler dahil) yeni GitHub depoma nasıl gönderirim?


Not: ayrıca git push --follow-tagsgit 1.8.3+ (Mayıs 2013) ile de var . Bkz aşağıda benim Düzenlenen cevabı
VonC

Yanıtlar:


237

Not: git push --all etiketlerinizi itmez, yalnızca dallarınızı itecektir.

git push --all
git push --tags

gerçekten her şeyi zorlar . Ayrıca " Tüm dalları çekmek ve itmek için git'i ayarlama " konusuna bakın . Aslında her şeyi zorlamadan önce bazı testler yapma seçeneğini
unutmayın --dry-run.
Kaynağınızı GitHub uzak deponuza ayarlamak için GitHub yardımına " Uzaktan kumandalarla çalışma " da bakın .


"Git itme" bir dal içindeki etiketleri dahil etme " bölümünde belirtildiği gibi , git 1.8.3+ (Mayıs 2013) tanıtıldı:

git push --follow-tags

Bu, tüm etiketleri itmez, ancak yalnızca ittiğiniz dal (lar) dan erişilebilenleri itecektir.

Bu, bu işlemin (kaydetme ve etiketleri itme ) iki yerine tek komutla yapılmasına yardımcı olabilir .

Git 2.4.1+ (Q2 2015) seçeneği sunacak push.followTags.


Bu, başka bir uzaktan kumandaya (orijin yerine) itmek istediğinizde işe yaramıyor gibi görünüyor, sadece mevcut şubemi itiyor.
Aloys

@Git sürümünüze ve mevcut varsayılan push politikanıza bağlı olan uygulamalar: stackoverflow.com/questions/10002239/…
VonC

Uzak şubeleri de itmek istiyorsanız--mirror
BFar

18

Kabul edilen cevap pek doğru değil ya da en azından benim için işe yaramadı. Uzak depoyu da belirtmem gerekiyordu, örneğin:

git push origin --all

Uzaktan kumandanın belirtilmesi yalnızca yukarı akış ayarlanmadığında gereklidir.
aross

Birden fazla uzaktan kumanda eklendiyse depo gerekir, inanıyorum ki ( $git remote -v)
michael

2
Yerel ve uzak git push -u origin --all
şubeler
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.