Apa arti dari 'origin' dalam 'git push origin master'

95

Saat saya lari:

git push origin master

... apa arti dari originkonteks ini?

Ickhyun Kwon
sumber
7
Lihat di tutorial Git - "Saat Anda bekerja dalam kelompok kecil yang berhubungan erat, bukan hal yang aneh untuk berinteraksi dengan repositori yang sama berulang kali. Dengan mendefinisikan singkatan repositori jarak jauh, Anda dapat membuatnya lebih mudah". Jika Anda tidak melakukan itu, asal digunakan secara default.
sakisk
1
Posting terkait - Apa itu "asal" di Git?
NSP

Jawaban:

74

originadalah nama default dari repositori git jarak jauh yang Anda kloning. Lihat .git/refs/remotes/origin/*dan di .git/configdalam sumber Anda untuk melihat bagaimana git mengetahuinya.

skuro
sumber
7
Saya akan mengatakan "kloning repositori Anda dari" tidak "memeriksa sumber Anda dari" - yang terakhir adalah frase peninggalan dari VCS terpusat, dan bisa sedikit menyesatkan bagi pemula DVCS.
Cascabel
1
Bagaimana dengan perintah git remote add origin? Mengapa Anda menambahkan asal? stackoverflow.com/a/8248542/719689
AlxVallejo
5
git remote add originartinya menambahkan repositori jarak jauh bernama origin , yang tidak memiliki arti teknis khusus, itu hanya nama default yang banyak digunakan untuk repositori jarak jauh asli. Anda dapat menggunakan foobar, bukan origin jika Anda suka.
skuro
1
@AlxVallejo yang sering digunakan saat Anda tidak menggandakan dari repositori itu, melainkan Anda membuat repositori secara lokal dan membuat origin di tempat lain sebagai repo jarak jauh.
Matt
4
@KasunSyambalapitiya begitulah nama cabangnya. Dengan git push origin masterAnda memberi tahu git untuk mendorong semua komit di cabang lokal yang saat ini diperiksa (yaitu dari sistem file Anda) ke repo jarak jauh yang diidentifikasi dengan nama originpada cabang jarak jauhnya yang bernama master.
skuro
85

git memiliki konsep "remote" - ini seperti nama panggilan yang mudah untuk sebuah repositori, jadi Anda tidak perlu menggunakan URL lengkapnya setiap kali Anda ingin merujuk ke repositori lain.

originhanyalah sebuah remote seperti yang lain, tetapi Anda sering melihatnya karena ketika Anda mengkloning sebuah repositori untuk pertama kalinya, git clonesecara default akan mengatur sebuah remote yang dipanggil originuntuk merujuk ke URL yang Anda kloning.

Jika Anda melakukannya, git remote -vitu akan menampilkan semua remote yang telah Anda siapkan di repositori lokal Anda, dan URL yang dirujuknya. (Anda akan melihat bahwa ini sedikit lebih rumit daripada yang saya katakan di atas, karena remote dapat merujuk ke URL yang berbeda untuk mendorong dan mengambil, tetapi Anda mungkin tidak perlu khawatir tentang itu. :))

Mark Longair
sumber
Bagaimana dengan perintah git remote add origin? Mengapa Anda menambahkan asal? stackoverflow.com/a/8248542/719689
AlxVallejo
2
@AlxVallejo: Anda dapat menambahkan originremote sendiri jika Anda menginisialisasi repositori sendiri, daripada melakukannya melalui git clone.
Mark Longair
@MarkLongair apa yang kami gunakan masterdi akhir kode
Kasun Siyambalapitiya
35

Origin adalah tempat Anda mendapatkan kode dari origin -ally.

livingtech
sumber
2
Bagi saya, ini bukan lelucon tapi aturan mnemotechic untuk mengingat arti asal. Dan yang saya suka, omong-omong +1
MiGU
Meskipun saya menikmati lelucon ayahmu, itu belum tentu benar. Saya dapat membuat repo baru secara lokal dan berkomitmen untuk itu tanpa sepengetahuan remote. Saya nanti dapat membuat asal bernama jarak jauh dan mendorong semua komitmen yang telah saya buat secara lokal. Origin tidak harus menjadi sumber asli dari repositori.
Rob Bell
3

Ini akan membantu

https://www.git-tower.com/learn/git/glossary/origin

n Git, "origin" adalah nama kependekan dari remote repository tempat proyek pertama kali digandakan. Lebih tepatnya, ini digunakan sebagai pengganti URL repositori asli - dan dengan demikian membuat referensi jauh lebih mudah.

Perhatikan bahwa origin sama sekali bukan nama "ajaib", tetapi hanya konvensi standar. Meskipun masuk akal untuk membiarkan konvensi ini tidak tersentuh, Anda dapat mengganti namanya dengan sempurna tanpa kehilangan fungsionalitas apa pun.

Dalam contoh berikut, parameter URL ke perintah "clone" menjadi "origin" untuk repositori lokal yang digandakan:

git clone https://github.com/gittower/git-crash-course.git

Deeksha Sharma
sumber
2

origin adalah remote yang dibuat oleh git itu sendiri ketika Anda untuk klon pertama repo untuk mengarahkan URL dari mana Anda membuat klon. misal: origin [email protected]: / PROJECT_U

Nishant Dwivedi
sumber
0

"Origin" adalah nama repositori jarak jauh tempat Anda ingin menerbitkan komit Anda. Secara konvensi, repositori jarak jauh default disebut "asal", tetapi Anda dapat bekerja dengan beberapa remote (dengan nama berbeda) pada saat yang sama.

Sameer
sumber