Skip to content
Latchkey

O Que É um Git Remote?

Um remote é uma referência nomeada a uma cópia do seu repositório hospedada em outro lugar, como no GitHub, para a qual você faz push e da qual faz fetch.

Um remote é como o seu repositório Git local conversa com um compartilhado. É apenas um nome, como origin, emparelhado com uma URL. Você faz push dos seus commits para um remote para que outros e o CI possam vê-los, e faz fetch de um remote para pegar o trabalho de todos os demais.

O que é um remote

Um remote é um marcador para outra cópia do repositório, identificado por um nome curto e uma URL. Você pode ter vários remotes, por exemplo um para o projeto canônico e outro para o seu próprio fork. Branches de remote-tracking espelham o estado dessas cópias localmente.

Trabalhando com remotes

Você pode listar, adicionar e inspecionar remotes e, em seguida, fazer push e fetch contra eles pelo nome.

Inspecting and adding remotes
git remote -v
git remote add upstream https://github.com/owner/project.git
git fetch upstream

Push e fetch

O push envia seus commits locais para um remote; o fetch baixa novos commits de um remote sem alterar seus arquivos de trabalho; o pull é fetch mais merge. Essas operações são como uma equipe converge para uma história compartilhada através do remote.

Remotes em CI/CD

O remote é a fonte da verdade que um sistema de CI/CD observa. Um push para uma branch remota dispara pipelines, e o runner de CI clona do remote para fazer o build do commit exato enviado. Plataformas de runner gerenciado como o Latchkey fazem checkout do seu repositório remoto no início de cada job, então um clone rápido e confiável mantém os pipelines ágeis.

Tarefas comuns com remotes

  • Use origin para o repositório do qual você clonou.
  • Adicione um remote upstream ao trabalhar a partir de um fork.
  • Faça fetch antes de começar o trabalho para ver a última história.
  • Faça push das branches de feature para que o CI e os revisores possam vê-las.

Principais conclusões

  • Um remote é uma URL nomeada para outra cópia do seu repositório.
  • Push, fetch e pull movem commits entre local e remote.
  • O CI observa o remote e o clona para fazer o build do commit enviado.

Guias relacionados