2013-03-29 18 views
10
uzak

mevcut şube şu anda HEAD olmayan bir şube itmek git çıplak Depodaki bir yolu var mı?git push DEĞİL

$ git branch 
* master 
    another 

Ve ayarlanmış iki ofise sahip: origin ve another

Örneğin

i iki şubeleri var.

Ben HEAD değiştirmeden sadece bir komuta another den another/another edebilmek itme gerekir. git push ile

+0

Uzak ve bir dal için tamamen aynı isme sahip değil düşünebilirsiniz. Kafa karıştırıcı. –

+3

Başka another_branch' veya 'git uzaktan başka another_remote' –

+2

@KlasMellbourn adlandırmak -m' git dalını kullanabilirsiniz, o sadece örnek amaçlıdır. Tabii ki bu garip isimlendirmem yok. – AlexKey

cevap

10

uzak ve yerel belirtebilirsiniz

git push another another 
+0

Bu, başka bir diğerine mi iteceği anlamına mı geliyor? Ben her zaman mevcut HEAD'I başka bir diğerine zorlayacağını düşündüm. – AlexKey

+3

Evet. (Ikincisi) “diğeri”, (genel olarak) 'src: dst' biçimine sahip bir refspektir. Bu yerel "src" dalını "dst" uzak şubesine itmek anlamına gelir. Eğer:: dst 'atlanırsa, yerel şube 'src' uzaktaki src' ye gönderilir. –

+1

geçerli HEAD sadece varsayılan değerdir, ancak Lars'ın –

23

Tüm bu "başka başka" orijinal Söz konusu cevap ve yorumlar sürü bunun nedenini mükemmel bir örnek olan (o kadar kafa karıştırıcı şeyleri ilk etapta isminize koymak önemlidir), aşağıdaki gibi başka bir cevap yazmasına yardım edemiyorum (amaçlanmadı).

S: Şu anda HEAD'de olan bir dalı itmek için git (çıplak) depoda bir yol var mı? Mesela iki şubem ve iki uzaktan kumandam var. Ben HEAD değiştirmeden sadece bir komuta feature den upstream/feature edebilmek itme gerekir. A: Şunu yapın: ( )

$ git push upstream feature 

S: o featureupstream/feature yerel itmek anlamına mı geliyor? Her zaman mevcut HEAD'i upstream/feature'a göndereceğini düşündüm.

A: Evet. feature bölümü, genel olarak, bir form src:dst sahip bir refspec vardır. Bu, src yerel şubesini uzak şube dst'a göndermek anlamına gelir. :dst atlanırsa, yerel şube src uzak dalı src itilir. Uzak dal olarak da farklı bir ad belirtebilirsiniz. Sadece yapın:

$ git push upstream feature:cool_new_feature 

(Bu yanıt için malzemelerin sağlanması için teşekkürler @ gabriele-Petronella ve @alexkey.)

+0

"Yukarı akış" özel bir uzaktan kumanda için bir takma addır. Oranlar, en tipik konvansiyonu çevrimiçi olarak takip ediyorsanız (yani, yapıştırmayı çok kopyaladığınızda), aslında "kökeni" olacak. Bkz .: https://stackoverflow.com/questions/9529497/what-is-origin-in-git – Kat

+0

@Kat: hem "hem akış hem de" kökeni "sadece" belirli bir uzaktan kumanda için bir takma addır. [github çatal iş akışı] sözleşmesiyle anlamlar (https://help.github.com/articles/configuring-a-remote-for-a-fork/). Ne yaptığınızı bilmediğiniz sürece, herhangi bir git komutunda "upstream" sözcüğünü "origin" ile değiştirebileceğinizi varsaymayın. – RayLuo

İlgili konular