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 Enterprise Server.

Neste artigo

Adding a remote repository

To add a new remote, use the git remote add command on the terminal, in the directory your repository is stored at.

O comando git remote add usa dois argumentos:

  • Um nome de remote, por exemplo, origin
  • Uma URL remota, por exemplo https://[hostname]/user/repo.git

Por exemplo:

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

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

For more information on which URL to use, see "About remote repositories."

Troubleshooting: Remote origin already exists

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

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

Para corrigir isso, é possível:

  • Usar um nome diferente para o novo remote
  • Rename the existing remote repository
  • Delete the existing remote repository

Changing a remote repository's URL

The git remote set-url command changes an existing remote repository URL.

Tip: For information on the difference between HTTPS and SSH URLs, see "About remote repositories."

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://[hostname]/USERNAME/REPOSITORY.git
    • Se estiver atualizando para usar SSH, a URL poderá ser parecida com esta:
      git@hostname: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@hostname:USERNAME/REPOSITORY.git (fetch)
    > origin  git@hostname: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://hostname/USERNAME/REPOSITORY.git
  5. Verifique se o URL remote foi alterado.
    $ git remote -v
    # Verify new remote URL
    > origin  https://hostname/USERNAME/REPOSITORY.git (fetch)
    > origin  https://hostname/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://hostname/USERNAME/REPOSITORY.git (fetch)
    > origin  https://hostname/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@hostname:USERNAME/REPOSITORY.git
  5. Verifique se o URL remote foi alterado.
    $ git remote -v
    # Verify new remote URL
    > origin  git@hostname:USERNAME/REPOSITORY.git (fetch)
    > origin  git@hostname:USERNAME/REPOSITORY.git (push)

Troubleshooting: No such remote '[name]'

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

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

Verifique se você inseriu corretamente o nome do remote.

Renaming a remote repository

Use the git remote rename command to rename an existing remote.

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://hostname/OWNER/REPOSITORY.git (fetch)
> origin  https://hostname/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://hostname/OWNER/REPOSITORY.git (fetch)
> destination  https://hostname/OWNER/REPOSITORY.git (push)

Troubleshooting: Could not rename config section 'remote.[old name]' to '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://hostname/OWNER/REPOSITORY.git (fetch)
> origin  https://hostname/OWNER/REPOSITORY.git (push)

Troubleshooting: Remote [new name] already exists

Esse erro informa que o nome de remote que você deseja usar já existe. To solve this, either use a different remote name, or rename the original remote.

Removing a remote repository

Use the git remote rm command to remove a remote URL from your repository.

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://hostname/OWNER/REPOSITORY.git (fetch)
> origin  https://hostname/OWNER/REPOSITORY.git (push)
> destination  https://hostname/FORKER/REPOSITORY.git (fetch)
> destination  https://hostname/FORKER/REPOSITORY.git (push)

$ git remote rm destination
# Remover remote
$ git remote -v
# Confirmar a remoção
> origin  https://hostname/OWNER/REPOSITORY.git (fetch)
> origin  https://hostname/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.

Troubleshooting: Could not remove config section '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ê?

Privacy policy

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.