Qual é o significado de 'origin' em 'git push origin master'

94

Quando eu corro:

git push origin master

... qual é o significado de originneste contexto?

Ickhyun Kwon
fonte
7
Veja no tutorial do Git - "Quando você está trabalhando em um grupo pequeno e unido, não é incomum interagir com o mesmo repositório repetidamente. Definindo uma abreviatura de repositório remoto, você pode tornar isso mais fácil". Se você não fizer isso, a origem será usada por padrão.
Sakisk,
1
Postagem relacionada - O que é “origem” no Git?
RBT

Respostas:

74

originé o nome padrão do repositório git remoto do qual você clonou. Ter um olhar para .git/refs/remotes/origin/*e .git/configdentro de suas fontes para ver como git sabe sobre ele.

skuro
fonte
7
Eu diria "clonou seu repositório de" e não "verificou suas fontes de" - a última é uma frase remanescente do VCS centralizado e pode ser um pouco enganoso para iniciantes em DVCS.
Cascabel
1
E o comando git remote add origin? Por que você adicionaria uma origem? stackoverflow.com/a/8248542/719689
AlxVallejo
5
git remote add originsignifica adicionar um repositório remoto denominado origin , que não tem nenhum significado técnico especial, é apenas um nome padrão amplamente usado para um repositório remoto original. Você pode usar foobar em vez de origem, se desejar.
skuro
1
@AlxVallejo que é freqüentemente usado quando você não clona desse repositório, mas em vez disso, você criou o repositório localmente e criou a origem em outro lugar como o repo remoto.
Matt
4
@KasunSiyambalapitiya esse é o nome do ramo. Com git push origin mastervocê diz ao git para enviar todos os commits no branch local atualmente verificado (ou seja, do seu sistema de arquivos) para o repositório remoto identificado pelo nome originem seu branch remoto nomeado master.
skuro
85

git tem um conceito de "remotos" - esses são como apelidos fáceis para um repositório, então você não precisa usar seu URL completo toda vez que quiser se referir a outro repositório.

originé apenas um controle remoto como qualquer outro, mas você o vê com muita frequência, pois quando clona um repositório pela primeira vez, git clonepor padrão, ele configura um controle remoto chamado originpara se referir à URL de onde você clonou.

Se você fizer git remote -visso, serão exibidos todos os controles remotos configurados em seu repositório local e as URLs a que se referem. (Você verá que é um pouco mais complexo do que eu disse acima, pois um controle remoto pode se referir a uma URL diferente para enviar e receber, mas você provavelmente não precisa se preocupar com isso. :))

Mark Longair
fonte
E o comando git remote add origin? Por que você adicionaria uma origem? stackoverflow.com/a/8248542/719689
AlxVallejo
2
@AlxVallejo: Você mesmo pode adicionar o origincontrole remoto se inicializar um repositório, em vez de fazê-lo via git clone.
Mark Longair
@MarkLongair o que usamos masterno final do código
Kasun Siyambalapitiya
35

A origem é onde você obteve o código da origem .

Livingtech
fonte
2
Para mim, não é uma piada, mas uma regra mnemotécnica para lembrar o que significa origem. E um de que gosto, por
falar
Embora eu goste da piada do seu pai, não é necessariamente verdade. Posso criar um novo repo localmente e me comprometer com ele sem nenhum conhecimento de um controle remoto. Posteriormente, posso criar uma origem nomeada remota e enviar para ela todos os commits que fiz localmente. A origem não precisa ser a fonte original do repositório.
Rob Bell de
3

Isso seria de ajuda

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

n Git, "origin" é um nome abreviado para o repositório remoto do qual um projeto foi originalmente clonado. Mais precisamente, ele é usado no lugar da URL do repositório original - e assim torna a referência muito mais fácil.

Observe que a origem não é de forma alguma um nome "mágico", mas apenas uma convenção padrão. Embora faça sentido deixar essa convenção intacta, você pode renomeá-la perfeitamente sem perder nenhuma funcionalidade.

No exemplo a seguir, o parâmetro de URL para o comando "clone" torna-se a "origem" do repositório local clonado:

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

Deeksha Sharma
fonte
2

origin é criado remotamente pelo próprio git quando você, para o primeiro clone, o repo aponta a URL a partir da qual você criou o clone. por exemplo: origin [email protected]: / PROJECT_U

Nishant Dwivedi
fonte
0

"Origem" é o nome do repositório remoto onde você deseja publicar seus commits. Por convenção, o repositório remoto padrão é chamado de "origem", mas você pode trabalhar com vários controles remotos (com nomes diferentes) ao mesmo tempo.

Sameer
fonte