Yerel bir şubeyi GitHub'a gönderme


117

Git'i çalıştırdığımda git push, değişiklikleri GitHub depoma gönderecek şekilde yapılandırdım . Şimdiye kadar sadece bir usta şubem vardı.

Ancak, şimdi yerel bir şube oluşturdum ve şunu kullanarak bunu taahhüt ettim:

git checkout -b my_new_branch
git commit

Şimdi yapmak istediğim şey, bu daldaki değişikliklerimi GitHub'a aktarmak. Sadece git itmesi mi yapmalıyım?

İlk kurduğumda çalıştırdım:

git config push.default current

Sorunuz tam olarak nedir? Bu şekilde push.defaultayarlandığında, evet, git pushoradan klonladığınızı varsayarak, geçerli şubeyi, github deponuz olan orijine itecektir. (İsterseniz farklı bir uzaktan kumanda belirtebilirsiniz branch.my_new_branch.remote.) Peki bunu denediniz ve çalışmıyor mu?
Cascabel

1
Tüm yerel şubelerinizin aynı uzak şubeye aktarmasını istiyorsanız, açık olun: git push origin HEAD: remote_branch
Ustaman Sangat

Yanıtlar:


221

git push origin my_new_branchKaynak uzaktan kumandanızın github deponuza çarpacak şekilde yapılandırıldığını varsayarsak, aradığınıza inanıyorum .



3
Daha sonra bu şube üzerinde başka insanlarla birlikte çalışmak ve dolayısıyla git çekme yapmak istiyorsanız, yeni şubeniz için izleme bilgilerini ayarlamak isteyeceksiniz: git branch --set-upstream-to=origin/my_new_branch my_new_branch
gloriphobia

9

Yerel git ayarlarınıza bağlı olarak, klonladığınız ya da göndermeye çalıştığınız dal olmayan bir dalı kontrol ettiyseniz, git yerel şubenizi zorlamayacaktır.

İşte verdiği mesaj:

uyarı: push.default ayarlanmamış; örtük değeri Git 2.0'da 'eşleşme'den' basit'e değişmiştir. Bu mesajı susturmak ve geleneksel davranışı sürdürmek için şunu kullanın:

git config --global push.default eşleştirme

Bu mesajı susturmak ve yeni davranışı şimdi benimsemek için şunu kullanın:

git config --global push.default basit

Push.default 'eşleştirme' olarak ayarlandığında, git yerel dalları aynı adla zaten var olan uzak dallara itecektir.

Git 2.0'dan beri, Git varsayılan olarak daha muhafazakar 'basit' davranışı kullanır, bu da geçerli dalı yalnızca 'git pull'un geçerli dalı güncellemek için kullandığı karşılık gelen uzak dala iter.

Daha fazla bilgi için 'git help config'e bakın ve' push.default 'araması yapın. (Git 1.7.11'de 'basit' mod tanıtıldı. Bazen Git'in eski sürümlerini kullanıyorsanız 'basit' yerine benzer 'geçerli' modu kullanın)

ölümcül: Geçerli şubenin MyLocalBranchyukarı akış şubesi yok. Mevcut dalı itmek ve uzaktan kumandayı yukarı akış olarak ayarlamak için,

git push --set-upstream origin MyLocalBranch


-12

GitHub ana deponuza aktarılacak şekilde git'inizi yapılandırdıysanız, şubede olursanız olun, GitHub ana deponuza gönderilecektir.

Unutmayın, aynı depoda birçok geliştirici çalışıyorsa, bir çakışma yaşayabilirsiniz.


Git config push.default current
Noam
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.