Por que o Git me diz “Não existe essa 'origem' remota” quando tento fazer push para a origem?


113

Eu sou muito novo no Git; Só recentemente criei uma conta GitHub.

Acabei de tentar enviar meu primeiro repositório (um projeto de amostra), mas estou recebendo o seguinte erro:

No such remote 'origin'

Executei os seguintes comandos:

git init
git commit -m "first commit"
git remote add origin https://github.com/VijayNew/NewExample.git
git push -u origin master

No entanto, quando executei git commit -m "first commit", recebi a seguinte mensagem:

nothing added to commit but untracked files present (use "git add" to track)

Então tentei definir origin, usando

git remote set-url origin https://github.com/VijayNew/NewExample.git

Mas recebi o seguinte erro:

No such remote 'origin'

O que eu fiz de errado e o que devo fazer?


O que te dá git-remote -v?
hek2mgl

1
entre o init e o commit adicione um "git add." degrau. Qual saída "git remote" (ou git remote -v ") oferece a você?

git remote -vNada é exibição.
Vijay

1
você adicionou 'git add' ?????
Raja Simon

3
Quando você está iniciando um novo repositório, o primeiro comando REMOTO deve ser git remote add origin git@abc.com: mygit, se você executar git remote set-url origin git@abc.com: mygit, você receberá a mensagem de erro: Não existe 'origem' remota. Encontrei o mesmo problema e demorou alguns minutos para eu descobrir isso. Espero que isso possa ajudar outras pessoas.
Kemin Zhou,

Respostas:


156

Dois problemas:

1 - Você nunca disse ao Git para começar a rastrear qualquer arquivo

Você escreve que você correu

git init
git commit -m "first commit"

e que, nessa fase, você tem

nothing added to commit but untracked files present (use "git add" to track).

O Git está dizendo que você nunca disse a ele para começar a rastrear nenhum arquivo, e ele não tem nada para tirar um instantâneo. Portanto, o Git não cria commit. Antes de tentar um commit, você deve dizer ao Git (por exemplo):

Ei Git, você vê aquele README.mdarquivo parado no meu diretório de trabalho, aí? Você poderia colocá-lo sob controle de versão para mim? Eu gostaria que fosse no meu primeiro commit / snapshot / revisão ...

Para isso, você precisa preparar os arquivos de interesse, usando

git add README.md

antes correr

git commit -m "some descriptive message"

2 - Você não configurou o repositório remoto

Então você correu

git remote add origin https://github.com/VijayNew/NewExample.git

Depois disso, seu repositório local deve ser capaz de se comunicar com o repositório remoto que reside na URL especificada ( https://github.com/VijayNew/NewExample.git ) ... desde que o repositório remoto realmente exista! No entanto, parece que você nunca criou esse repositório remoto no GitHub em primeiro lugar: no momento em que escrevo esta resposta, se eu tentar visitar o URL correspondente, recebo

insira a descrição da imagem aqui

Antes de tentar enviar para esse repositório remoto, você precisa se certificar de que o último realmente existe. Portanto, vá para o GitHub e crie o repositório remoto em questão. Então, e só então, você será capaz de empurrar com sucesso com

git push -u origin master

@ Jubobs. O primeiro problema é o meu erro. Agora eu gosto disso. git init git add --all git commit -m "first commit". Agora está funcionando. 2) Na verdade, apaguei minha conta antes de 20 minutos. Agora criei uma nova conta. https://github.com/VijayMobileApp/WindowsPhoneExample.git
Vijay

E ainda estou recebendoremote: Repository not found. fatal: repository 'https://github.com/VijayNew/NewExample.git/' not found
Vijay

@Vijay você excluiu sua conta antiga, mas a conta ainda está em uso
Raja Simon

$ git remote set-url origin https://github.com/VijayMobileApp/WindowsPhoneExamp le.git fatal: No such remote 'origin'
Vijay

1
Ao visitar o URL, vejo que agora você criou um repo chamado WindowsPhoneExampleem sua conta do GitHub VijayMobileApp,. Tudo que você precisa fazer agora é correr git remote add origin https://github.com/VijayMobileApp/WindowsPhoneExample. Então você deve ser capaz de empurrar git push -u origin master.
jub0bs de

42

Suponho que você não executou este comando depois que o commit falhou, então apenas execute-o para criar o remoto:

 git remote add origin https://github.com/VijayNew/NewExample.git

E o commit falhou porque você precisa de git addalguns arquivos que deseja rastrear.


1
Este comando permite apenas que o repositório local saiba sobre o remoto. Na verdade, ele não cria o repo remoto nos servidores GitHub, o que eu acho que é o que o OP precisa fazer aqui.
jub0bs de

1
Estou bem ciente do que o comando faz. Pela pergunta, eu estava supondo que o usuário provavelmente colou todos os comandos de uma vez e o commit falhou, então ele nunca realmente adicionou o controle remoto.
Emil Davtyan

1
Só para ficar claro, eu não estava sugerindo que você não sabe o que git remote addsignifica, :)Apenas que você não considerou a possibilidade de que o OP nunca tenha criado o repo remoto.
jub0bs

2
Eu tive o mesmo problema e já havia criado o repositório remoto. Essa resposta foi a solução.
sdjuan

Isso é o que eu precisava, a linha de comando (set-url) foi sugestão --add que não funcionou de todo. obrigado
Xeuron

17

Eu enfrentei esse problema quando estava tentando vincular um repositório criado localmente a um repositório em branco no github. Inicialmente, eu estava tentando, git remote set-urlmas tinha que tentar git remote add.

git remote add origin https://github.com/VijayNew/NewExample.git
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.