Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Gerenciar repositórios remotos

Aprenda a trabalhar com seus repositórios locais no seu computador e repositórios remotos hospedados no GitHub.

Adicionar um repositório remoto

Para adicionar um novo remoto, use o comando adicionar remoto do git no terminal do diretório no qual seu repositório está armazenado.

O comando git remote add usa dois argumentos:

  • Um nome de remote, por exemplo, origin
  • Uma URL remota, por exemplo https://github.com/user/repo.git

Por exemplo:

$ git remote add origin https://github.com/user/repo.git
# Defina um novo remote

$ git remote -v
# Verifique  o novo remote
> origin  https://github.com/user/repo.git (fetch)
> origin  https://github.com/user/repo.git (push)

Para obter mais informações sobre qual URL usar, consulte "Sobre repositórios remotos".

Solução de problemas: A origem remota já existe

Esse erro significa que você tentou adicionar um remote com um nome que já existe no repositório local.

$ git remote add origin https://github.com/octocat/Spoon-Knife.git
> fatal: remote origin already exists.

Para corrigir isso, é possível:

  • Usar um nome diferente para o novo remote
  • Renomeie o repositório remoto existente
  • Exclua o repositório remoto existente

Alterar a URL de um repositório remoto

O comando git remote set-url altera a URL de um repositório remoto existente.

Dica: Para obter informações sobre a diferença entre as URLs de HTTPS e SSH, consulte "Sobre repositórios remotos".

O comando git remote set-url usa dois argumentos:

  • Um nome remote existente. Por exemplo, origin ou upstream são duas escolhas comuns.
  • Uma nova URL para o remote. Por exemplo:
    • Se estiver atualizando para usar HTTPS, a URL poderá ser parecida com esta:
      https://github.com/USERNAME/REPOSITORY.git
    • Se estiver atualizando para usar SSH, a URL poderá ser parecida com esta:
      git@github.com:USERNAME/REPOSITORY.git

Alternar URLs remotes de SSH para HTTPS

  1. Abra TerminalTerminalGit Bash.
  2. Altere o diretório de trabalho atual referente ao seu projeto local.
  3. Liste seus remotes existentes para obter o nome do remote que deseja alterar.
    $ git remote -v
    > origin  git@github.com:USERNAME/REPOSITORY.git (fetch)
    > origin  git@github.com:USERNAME/REPOSITORY.git (push)
  4. Altere a URL do remote de SSH para HTTPS com o comando git remote set-url.
    $ git remote set-url origin https://github.com/USERNAME/REPOSITORY.git
  5. Verifique se o URL remote foi alterado.
    $ git remote -v
    # Verify new remote URL
    > origin  https://github.com/USERNAME/REPOSITORY.git (fetch)
    > origin  https://github.com/USERNAME/REPOSITORY.git (push)

Na próxima vez que você aplicar git fetch, git pull ou git push no repositório remote, precisará fornecer seu nome de usuário e a senha do GitHub. Quando o Git solicitar a sua senha, insira seu token de acesso pessoal (PAT). Autenticação baseada em senha para o Git está obsoleta, e usar um PAT é mais seguro. Para obter mais informações, consulte "Criar um token de acesso pessoal".

Você pode usar um auxiliar de credenciais para que o Git lembre seu nome de usuário e token de acesso pessoal toda vez que conversar com o GitHub.

Mudar as URLs remotas de HTTPS para SSH

  1. Abra TerminalTerminalGit Bash.
  2. Altere o diretório de trabalho atual referente ao seu projeto local.
  3. Liste seus remotes existentes para obter o nome do remote que deseja alterar.
    $ git remote -v
    > origin  https://github.com/USERNAME/REPOSITORY.git (fetch)
    > origin  https://github.com/USERNAME/REPOSITORY.git (push)
  4. Altere a URL do remote de HTTPS para SSH com o comando git remote set-url.
    $ git remote set-url origin git@github.com:USERNAME/REPOSITORY.git
  5. Verifique se o URL remote foi alterado.
    $ git remote -v
    # Verify new remote URL
    > origin  git@github.com:USERNAME/REPOSITORY.git (fetch)
    > origin  git@github.com:USERNAME/REPOSITORY.git (push)

Solução de problemas: Não há tal '[name]' remoto '

Este erro informa que o remote que você tentou alterar não existe:

$ git remote set-url sofake https://github.com/octocat/Spoon-Knife
> fatal: No such remote 'sofake'

Verifique se você inseriu corretamente o nome do remote.

Renomear um repositório remoto

Use o comando renomear o remoto do git para renomear um remoto existente.

O comando git remote rename tem dois argumentos:

  • O nome de um remote existente, como origin
  • Um novo nome para o remote, como destination

Exemplo

Estes exemplos supõem que você está clonando usando HTTPS, que é o método recomendado.

$ git remote -v
# Consulta os remotes existentes
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)

$ git remote rename origin destination
# Altera o nome do remote de 'origin' para 'destination'

$ git remote -v
# Confirma o novo nome do remote
> destination  https://github.com/OWNER/REPOSITORY.git (fetch)
> destination  https://github.com/OWNER/REPOSITORY.git (push)

Solução de problemas: Não foi possível renomear a seção de configuração 'remote.[old name]' para 'remote.[new name]'

Esse erro informa que o nome do remote antigo que você inseriu não existe.

Você pode consultar os remotes existentes no momento com o comando git remote -v:

$ git remote -v
# Consulta os remotes existentes
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)

Solução de problemas: Já existe um [new name] remoto

Esse erro informa que o nome de remote que você deseja usar já existe. Para resolver isso, use um nome remoto diferente ou renomeie o remoto original.

Remover um repositório remoto

Use o comando git remote rm para remover uma URL remota do seu repositório.

O comando git remote rm tem um argumento:

  • O nome de um remote, como destination

Exemplo

Estes exemplos supõem que você está clonando usando HTTPS, que é o método recomendado.

$ git remote -v
# Ver remotes atuais
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)
> destination  https://github.com/FORKER/REPOSITORY.git (fetch)
> destination  https://github.com/FORKER/REPOSITORY.git (push)

$ git remote rm destination
# Remover remote
$ git remote -v
# Confirmar a remoção
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)

Observação: o comando git remote rm não exclui o repositório do remote no servidor. Ele simplesmente remove o remote e suas referências do repositório local.

Solução de problemas: Não foi possível remover a seção 'remote.[name]'

Esse erro informa que o remote que você tentou excluir não existe:

$ git remote rm sofake
> error: Could not remove config section 'remote.sofake'

Verifique se você inseriu corretamente o nome do remote.

Leia mais

Esse documento ajudou você? Política de Privacidade

Ajude-nos a tornar esses documentos ótimos!

Todos os documentos do GitHub são de código aberto. Você percebeu que algo que está errado ou não está claro? Envie um pull request.

Faça uma contribuição

Ou, aprenda como contribuir.