Saya tahu, asal adalah istilah untuk repositori jarak jauh dan master adalah cabang di sana.
Saya sengaja menghilangkan "konteks" di sini dan saya berharap jawabannya tidak tergantung pada konteksnya. Jadi pada command line git, apa perbedaan antara origin / master dan origin master . Apakah ada cara yang tidak ambigu untuk memahami kapan harus menggunakan asal / master dan kapan saya harus menggunakan master asal ?
Jawaban:
Sebenarnya ada tiga hal di sini:
origin master
ada dua hal yang terpisah, danorigin/master
satu hal. Tiga hal total.Dua cabang:
master
adalah cabang lokalorigin/master
adalah cabang jarak jauh (yang merupakan salinan lokal dari cabang bernama "master" pada remote bernama "asal")Satu remote:
origin
adalah remoteContoh: tarik dalam dua langkah
Karena
origin/master
merupakan cabang, Anda dapat menggabungkannya. Berikut ini dua langkah menarik:Langkah satu, ambil
master
dari remoteorigin
. Themaster
pada cabangorigin
akan diambil dan salinan lokal akan diberi namaorigin/master
.Kemudian Anda menggabungkan
origin/master
ke dalammaster
.Kemudian Anda dapat mendorong perubahan baru Anda
master
kembali keorigin
:Lebih banyak contoh
Anda dapat mengambil beberapa cabang dengan nama ...
Anda dapat menggabungkan beberapa cabang ...
sumber
git remote add home my-server:projects/my-project
menambahkan remote bernama "home". Anda mungkin ingin membaca dokumentasi: git-scm.com/docs/git-remoteorigin/master
adalah entitas (karena itu bukan cabang fisik) yang mewakili keadaanmaster
cabang pada remoteorigin
.origin master
adalah cabangmaster
pada remoteorigin
.Jadi kita punya ini:
Contoh (di cabang lokal
master
):sumber
origin master
bukan cabang ... itu sebenarnya dua hal yang terpisah, "asal" (remote) dan "master" (cabang lokal).origin/master
adalah cabang master jarak jauh. Cabang lokal hanya master.origin/master
adalahmaster
cabang jarak jauhBiasanya setelah melakukan a
git fetch origin
untuk membawa semua perubahan dari server, Anda akan melakukangit rebase origin/master
, untuk rebase perubahan Anda dan memindahkan cabang ke indeks terbaru. Di sini,origin/master
merujuk ke cabang jarak jauh, karena pada dasarnya Anda memberi tahu GIT untuk rebaseorigin/master
cabang ke cabang saat ini.Anda akan menggunakannya
origin master
saat mendorong, misalnya.git push origin master
hanya memberitahu GIT untuk mendorong ke repositori jarak jauhmaster
cabang lokal .sumber
origin master
memberitahu perangkat lunak untuk melakukan sesuatu dengan apa pun yang ada di 'master' dalam repositori 'asal'.origin/master
adalah referensi dengan cara yang samaf3a4d5
atauHEAD
.origin adalah nama untuk remote git url. Ada banyak lagi contoh remote di bawah ini.
sejauh asal / master (contoh bangalore / master) berjalan, itu adalah penunjuk ke "master" yang melakukan di situs bangalore . Anda melihatnya di klon Anda.
Mungkin bangalore terpencil telah maju sejak Anda melakukan "ambil" atau "tarik"
sumber
Mengingat fakta bahwa Anda dapat beralih ke
origin/master
(meskipun dalam kondisi terpisah) saat kabel jaringan Anda dicabut, itu harus merupakan representasi lokal darimaster
cabang diorigin
.sumber