Eu sou novo no Git / GitHub e tive um problema. Criei um projeto de teste e o adicionei ao repositório local. Agora estou tentando adicionar arquivos / projeto ao repositório remoto.
Aqui está o que eu fiz (e isso funcionou) -
git remote add origin git://github.com/my_user_name/my_repo.git
Agora, quando tento enviar o repositório para o GitHub, usando o seguinte comando, recebo o seguinte erro -
git push origin master
Erro -
fatal: remote error:
You can't push to git://github.com/my_user_name/my_repo.git
Use [email protected]:my_user_name/my_repo.git
Respostas:
O GitHub não oferece suporte ao envio de protocolo Git, indicado pelo uso do início da URL
git://
. Como diz a mensagem de erro, se você deseja enviar por push, use o URL SSH[email protected]:my_user_name/my_repo.git
ou o protocolo "HTTP inteligente" usando ohttps://
URL que o GitHub mostra para o seu repositório.(Atualização: para minha surpresa, algumas pessoas aparentemente pensaram que, com isso, eu estava sugerindo que "https" significa "HTTP inteligente", o que eu não era. O Git costumava ter um protocolo "burro de HTTP" que não permitia pressionar antes o "HTTP inteligente" usado pelo GitHub foi introduzido - pode ser usado por um
http
ou outrohttps
. As diferenças entre os protocolos de transferência usados pelo Git são explicadas no link abaixo.)Se você quiser alterar o URL de origem, basta:
ou
Mais informações estão disponíveis em 10.6 Git Internals - Transfer Protocols .
fonte
Use a resposta de Mark Longair , mas certifique-se de usar o link HTTPS para o repositório:
Você pode usar então
git push origin master
.fonte
git push
também funciona.A solução de Mark Longair
git remote set-url...
é bastante clara. Você também pode obter o mesmo comportamento editando diretamente esta seção do arquivo .git / config:antes:
depois de:
(E, inversamente, a
git remote set-url...
invocação produz a alteração acima.)fonte
Existe uma solução simples para isso, para alguém novo:
Edite o arquivo de configuração no diretório local .git (
config
). Mudegit:
parahttps:
abaixo.fonte
Eu tive esse problema depois de atualizar o cliente Git e, de repente, meu repositório não pôde ser enviado.
Eu descobri que algum controle remoto antigo tinha o valor errado
url
, mesmo que o controle remoto ativo no momento tivesse o mesmo valorurl
e estivesse funcionando bem.Mas também havia o
pushurl
parâmetro, portanto, adicioná-lo ao controle remoto antigo funcionou para mim:Antes:
NOTA: Esta parte do arquivo "config" não foi usada por muito tempo, mas o novo cliente reclamou da URL incorreta:
Então eu adicionei o
pushurl
parâmetro ao controle remoto antigo:fonte
Este erro ocorre quando você clona um repo usando uma chamada como:
Isso essencialmente o define como um usuário somente de recepção, que não pode enviar alterações.
Corrigi isso abrindo o
.git/config
arquivo do meu repositório e alterando a linha:para:
Este
ssh+git
protocolo com ogit
usuário é o mecanismo de autenticação preferido pelo Github.As outras respostas mencionadas aqui tecnicamente funcionam, mas todas parecem ignorar o ssh, exigindo que você digite manualmente uma senha, o que provavelmente não deseja.
fonte
Se você acessar http://github.com/my_user_name/my_repo , verá uma caixa de texto onde poderá selecionar o caminho git para o seu repositório. Você vai querer usar isso!
fonte
Adicionei meu pubkey ao github.com e isso foi bem-sucedido:
Mas recebi o erro "Você não pode enviar" depois de fazer isso de maneira errada:
Em vez de fazer o que eu deveria ter feito:
fonte
Para definir
https
globalmente em vez degit://
:fonte
Os cmnds abaixo resolverão o problema.
fonte
A maneira mais rápida de superar isso é substituir
origin
pela sugestão.Em vez de
git push origin master
, use:fonte