Qual è il significato di "origin" in "git push origin master"


94

Quando corro:

git push origin master

... qual è il significato di originin questo contesto?


7
Guarda nel tutorial di Git - "Quando lavori in un piccolo gruppo strettamente unito, non è insolito interagire con lo stesso repository più e più volte. Definendo l'abbreviazione del repository remoto, puoi renderlo più semplice". Se non lo fai, l'origine viene utilizzata per impostazione predefinita.
sakisk

1
Articolo correlato - Cos'è "origine" in Git?
RBT

Risposte:


74

originè il nome predefinito del repository git remoto da cui hai clonato. Dai un'occhiata alle tue fonti .git/refs/remotes/origin/*e .git/configall'interno delle tue fonti per vedere come git lo sa.


7
Direi "clonato il tuo repository da" non "estratto le tue fonti da" - quest'ultima è una frase residua da VCS centralizzato e può essere un po 'fuorviante per i principianti di DVCS.
Cascabel

1
E il comando git remote add origin? Perché dovresti aggiungere un'origine? stackoverflow.com/a/8248542/719689
AlxVallejo

5
git remote add originsignifica aggiungere un repository remoto denominato origin , che non ha alcun significato tecnico speciale, è solo un nome predefinito ampiamente utilizzato per un repository remoto originale. Puoi usare foobar al posto di origin, se lo desideri.
skuro

1
@AlxVallejo che viene spesso utilizzato quando non hai clonato da quel repository, ma piuttosto hai creato il repository localmente e hai creato l'origine altrove come repository remoto.
Matt

4
@KasunSiyambalapitiya questo è il nome del ramo. Con git push origin mastertu dici a git di inviare tutti i commit nel ramo locale attualmente controllato (cioè dal tuo file system) al repository remoto identificato dal nome originsul suo ramo remoto denominato master.
skuro

85

git ha il concetto di "telecomandi" - questi sono come semplici soprannomi per un repository, quindi non devi usare il suo URL completo ogni volta che vuoi fare riferimento a un altro repository.

originè solo un telecomando come un altro, ma lo vedi molto frequentemente poiché quando cloni un repository per la prima volta, git cloneper impostazione predefinita verrà impostato un telecomando chiamato originper fare riferimento all'URL da cui hai clonato.

Se lo fai, git remote -vti mostreranno tutti i telecomandi che hai impostato nel tuo repository locale e gli URL a cui si riferiscono. (Vedrai che è un po 'più complesso di quanto ho detto sopra, in quanto un telecomando può fare riferimento a un URL diverso per il push e il recupero, ma probabilmente non devi preoccuparti di questo. :))


E il comando git remote add origin? Perché dovresti aggiungere un'origine? stackoverflow.com/a/8248542/719689
AlxVallejo

2
@AlxVallejo: potresti aggiungere origintu stesso il telecomando se avessi inizializzato un repository da solo, invece di farlo tramite git clone.
Mark Longair,

@MarkLongair cosa usiamo masteralla fine del codice
Kasun Siyambalapitiya

35

L'origine è da dove hai ottenuto il codice originariamente .


2
Per me, non è uno scherzo ma una regola mnemotecnica per ricordare cosa significa l'origine. E uno mi piace, tra l'altro +1
MiGU

Anche se mi piace la battuta di tuo padre, non è necessariamente vero. Posso creare un nuovo repository localmente e impegnarmi ad esso senza alcuna conoscenza di un telecomando. In seguito posso creare un'origine remota denominata e inviarla a tutti i commit che ho effettuato localmente. Origin non deve essere la fonte originale del repository.
Rob Bell,

3

Questo sarebbe un aiuto

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

n Git, "origin" è un nome abbreviato per il repository remoto da cui è stato originariamente clonato un progetto. Più precisamente, viene utilizzato al posto dell'URL di quel repository originale e quindi rende il riferimento molto più semplice.

Nota che l'origine non è affatto un nome "magico", ma solo una convenzione standard. Sebbene abbia senso lasciare invariata questa convenzione, è possibile rinominarla perfettamente senza perdere alcuna funzionalità.

Nell'esempio seguente, il parametro URL del comando "clone" diventa l '"origine" per il repository locale clonato:

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


2

origin è creato in remoto da git stesso quando per il primo clone il repository per puntare l'URL da cui hai creato il clone. ad esempio: origin git@github.com: / PROJECT_U


0

"Origine" è il nome del repository remoto in cui desideri pubblicare i tuoi commit. Per convenzione, il repository remoto predefinito è chiamato "origin", ma puoi lavorare con più telecomandi (con nomi diversi) contemporaneamente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.