Eu criei um fork (vamos chamá-lo myrepo
) de outro repositório (vamos chamá-lo orirepo
) no GitHub. Mais tarde, eu clonado orirepo
.
git clone https://github.com/original/orirepo.git
Modifiquei cerca de 20 arquivos, então testei minha mudança e fiz um commit
git add
git commit
No entanto, quando tentei empurrar
git push
Eu tenho este erro:
remote: Permission to original/orirepo.git denied to mylogin.
fatal: unable to access 'https://github.com/original/orirepo.git/': The requested URL returned error: 403
Sei que cometi um erro: deveria ter clonado meu garfo em vez disso orirepo
, mas agora é tarde para isso. Como posso enviar para meu fork em vez de origin/orirepo
, para o qual não tenho acesso de gravação?
git remote set-url origin http://github.com/myname/reponame
e depoisgit push origin mybranch
. Funcionou! Obrigado!git push -u myrepo master
faz com que seu mestre local comece a rastrearmyrepo/master
. Se, depois disso, você corrergit pull
no master, você irá puxar demyrepo
, e não maisorigin
.Então, você clonou o repo de alguém, fez as alterações e percebeu que não pode enviar para esse repo, mas pode enviar para seu próprio fork. Então, você foi em frente e bifurcou o repositório original.
Tudo que você precisa fazer é trocar a URL de origem em seu clone local pela URL de seu repositório bifurcado.
Faça isso deste modo
Onde
https://github.com/fork/name.git
está o URL de seu fork do repo original.Depois disso, apenas
e você poderá enviar suas alterações para o fork :)
fonte
Ok, finalmente editei meu arquivo de configuração git:
mudando:
para
Então,
Funcionou como um encanto.
Ou, graças à resposta de Thiago F Macedo :
fonte
Você deve clonar o repositório bifurcado em sua conta primeiro.
Você tem absolutamente permissão para enviar para este repositório. Se você deseja enviar seu código ao repositório original, pode emitir uma solicitação pull.
fonte