Sejauh ini saya telah mengambil langkah-langkah berikut:
- Mengkloning repo Git jarak jauh
- Bercabang cabang master ke percobaan
- diedit / diuji / kode berkomitmen di cabang eksperimental
Sekarang, saya belum siap untuk menggabungkan eksperimental menjadi master. Namun saya ingin mendorongnya kembali ke repo jarak jauh karena itulah repositori yang saya bagikan dengan beberapa rekan. Saya ingin mereka melihat apa yang telah saya lakukan di cabang percobaan. Saya biasanya hanya mengakses repo jarak jauh melalui SSH.
Bagaimana cara berbagi cabang lokal saya pada repo jarak jauh, tanpa memengaruhi cabang utama repo jarak jauh?
git
version-control
distributed
Coocoo4Cocoa
sumber
sumber
Jawaban:
Menurut halaman manual push git :
Temukan ref yang cocok
experimental
dengan repositori sumber (kemungkinan besar akan ditemukanrefs/heads/experimental
), dan perbarui ref yang sama (mis.refs/heads/experimental
) Di repositori asal dengannya.Jika
experimental
tidak ada dari jarak jauh, itu akan dibuat .Ini sama dengan:
Buat cabang
experimental
di repositori asal dengan menyalinexperimental
cabang saat ini .Formulir ini hanya diperlukan untuk membuat cabang atau tag baru di repositori jarak jauh ketika nama lokal dan nama jarak jauh berbeda ; jika tidak, nama ref itu sendiri akan berfungsi.
Atau, seperti yang disebutkan di ujung git , Anda dapat mengatur "Remote Default Cabang":
Jan menyarankan (untuk git> = 1.7.0 ) opsi
push -u
(ataupush --set-upstream
):Dengan begitu, Anda tidak perlu melakukan konfigurasi git.
sumber
-u
opsi untukpush
memastikan bahwa cabang lokal Anda melacak yang jauh setelah mempublikasikannya. Jika Anda lupa menggunakan-u
opsi, Anda bisa mengetikgit push -u
setelahnya di cabang, lalugit pull
akan berfungsi.git push origin experimental
, tidak ada bukti dari setiap paket yang diunggah. Sepertinya kendali jarak jauh sudah memiliki semua bahan dari dorongan Anda sebelumnya; itu hanya harus dihubungkan ke referensi .git push origin experimental
hanya akan membuat cabangexperimental
di remote.Jika nama cabang Anda
experimental
, dan nama remoteorigin
, maka itusumber
git push -u <remote-name> <branch-name>
tidak berfungsi jika cabang yang baru dibuat tidak muncul dari repo yang sama, yaitu jika Anda belum membuat cabang baru menggunakangit checkout -b new_branch
, maka ini tidak akan berfungsi.Sebagai contoh, saya telah mengkloning dua repositori berbeda secara lokal dan saya harus menyalin repo2 / branch1 untuk repo1 / dan kemudian mendorongnya juga.
Tautan ini membantu saya mendorong cabang lokal saya (diklon dari repo lain) ke repo jarak jauh saya:
sumber
Berikut adalah halaman github resmi untuk manajemen jarak jauh github http://github.com/guides/push-a-branch-to-github . Ini akan membantu Anda menjawab semua pertanyaan Anda.
sumber
tl; dr
Info lebih lanjut
setelah Anda melakukan sedikit komitmen pada:
Anda mendorong cabang Anda menentukan hulu ke salah satu repositori jarak jauh seperti berikut:
remote dapat dilihat oleh
biasanya, Anda akan memiliki remote standar tunggal
origin
. jadi perintah Anda akan terlihat seperti:dan semua dorongan konsekuen dapat dilakukan hanya dengan
git push
.sumber