SORU
22 Mayıs 2011, Pazar


Neden `---Yukarı ayarlamak her zaman yapmama gerek var mı?

Git: yeni bir şube oluşturmak

git branch my_branch

İtme:

git push origin my_branch

Şimdi birisi sunucu üzerinde bazı değişiklikler yaptı ve origin/my_branch çekmek istiyorum ki. Ben:

git pull

Ama anlıyorum:

You asked me to pull without telling me which branch you
want to merge with, and 'branch.my_branch.merge' in
your configuration file does not tell me, either. Please
specify which branch you want to use on the command line and
try again (e.g. 'git pull <repository> <refspec>').
See git-pull(1) for details.

If you often merge with the same branch, you may want to
use something like the following in your configuration file:

    [branch "my_branch"]
    remote = <nickname>
    merge = <remote-ref>

    [remote "<nickname>"]
    url = <url>
    fetch = <refspec>

See git-config(1) for details.

Bunu yapabilirim öğrendim:

git branch --set-upstream my_branch origin/my_branch

Ama neden ben oluşturmak her şube için bunu yapmama gerek var mı? Eğer origin/my_branch, my_branch basarsam o zaman my_branch origin/my_branch çekmek istediğim belli değil mi? Nasıl bu varsayılan davranışı yapabilir miyim?

CEVAP
22 Mayıs 2011, Pazar


git branch --set-upstream sözdizimi hatırlamak bağlı olmayan bir kısayol1yapmak için:

git push -u origin my_branch

... doğru itme ilk kez şube. Sen bunu sadece bir kez yapmak gerekir, ve o git branch --set-upstream yaptığı gibi aynı şekilde şube ve origin arasında ilişki kurar.

Şahsen iyi bir şey, şube ve uzak bir arasındaki bu ilişkiyi kurmak için açıkça var bence. Kurallar different for git push and git pull Bu sadece bir utanç.


1Aptalca, ama ben çok sık geçerli dalını belirtmek için varsayılan - değil, ve bunun sonuçları çok kafa karıştırıcı olduğunu varsayarak unutmayın:) gelebilir

2012-10-11 güncelleştirinGörünüşe göre kolay yanlış bulan tek kişi ben değilim! Git 1.8.0 tanıtan bir işaret için VonC sayesinde daha belirgin olursa Şubesi varsa takip eder, my_branch olarak kullanılabilir git branch --set-upstream-to,:

git branch --set-upstream-to origin/my_branch

... ya da kısa seçeneği:

git branch -u origin/my_branch

Bu değişiklik, ve akıl, the release notes for git 1.8.0, release candidate 1 tanımlanır:

Kullanıcı ne anlama geldiğini cazip Gıt yerel Şubesi origin/master son derece düşük bir olasılıktır kontrol edildi şu anda şube ile entegre etmek için ayarlamasını söyler git branch --set-upstream origin/master, ama diyelim ki oldu. Seçeneği itiraz; --set-upstream-to (kısa ve tatlı -u ile) yeni seçeneğini kullanın.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Christian Atlas

    Christian At

    26 Mart 2009
  • mliskIT

    mliskIT

    29 Mart 2012
  • Peter Sharp

    Peter Sharp

    11 ŞUBAT 2013