SORU
13 HAZİRAN 2013, PERŞEMBE


Neden açıkça yeni bir şube itmek gerek var mı?

git yeni olduğumu ve uyguluyorum. Ama git push yaptığım zaman benim şube depo karşıya olmadığını gördüm yerel bir şube oluşturdu. Aslında yapmam gereken: git push -u origin -all.
Neden bu? Bir şube, yeni bir değişim varsayılan olarak itildiği için değil mi? Neden ikinci komut çalıştırmak gerekiyor mu?

CEVAP
13 HAZİRAN 2013, PERŞEMBE


Gerçek nedeni, yeni bir repo (git init)hayır dalıdır(master, şube, sıfır şube) hayır

İlk kez bir bastırıyorlarboşupstream repo (genellikle bir bare one), Geliş yönündeki repo aynı isimde Şubesi vardır.

Ve:

Her iki durumda da, akıntıya karşı boş repo beri hiçbir şube:

  • henüz eşleşen şube adı yok
  • memba şube (aynı isim vermeden ya! yok İzleme ya da değil)

Bu sizin yerel anlamına gelirilkitme hiçbir fikri yok:

  • itmek için burada
  • Yukarı itmek için herhangi bir şube ya da dalın adı olarak kaydedilen bulunamıyor, ya da aynı ada sahip/olduğundan)

En azından yapmanız gereken:

git push origin master

Ancak, bu sadece eğer

  • olacak memba master yukarı bir şube oluşturmak (şimdi boş olmayan repo): iyi.
  • olmazkayıtyerel şube " master' itmek için yukarı olması gerekir(origin) 'master' (memba şube): kötü.

Bu, ilk saldırı için, bir yapmak için tavsiye edilir:

git push -u origin master

remote tracking branch origin/master kaydeder ve bir sonraki itme otomatik olarak master 17 ** itme sağlayacaktır.

git checkout master
git push

Ve bu politikaları itme ile de çalışacak 'current' veya 'upstream'.
İlk olarak, her durumda, git push -u origin master, basit bir git bas Sağ Yukarı şube için ana itme devam etmek için yeterli olacaktır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dion Coulls

    Dion Coulls

    16 AĞUSTOS 2006
  • joshsnice

    joshsnice

    28 Kasım 2006
  • My Name Is Jeff

    My Name Is J

    26 ŞUBAT 2008