Git e GitHub: guia para iniciantes com os comandos essenciais

Um passo a passo de Git e GitHub para iniciantes: o que são, como instalar e configurar, o fluxo commit-branch-merge, os comandos essenciais, como publicar no GitHub e como sair dos problemas mais comuns.

Por Equipe Global World Connect

9 min de leitura

Ilustração de um grafo de commits com uma ramificação que se junta à linha principal, representando o Git
Ilustração original do Global World Connect

Quem já teve um arquivo chamado trabalho_final_v2_agora_vai.docx conhece o problema que o Git resolve: guardar o histórico de um projeto sem multiplicar cópias, permitir voltar atrás e deixar várias pessoas trabalharem juntas sem sobrescrever o trabalho umas das outras.

Este guia apresenta o Git e o GitHub para quem está começando. Você vai instalar, criar seu primeiro repositório, aprender os comandos do dia a dia e ver como resolver os tropeços mais comuns. Os comandos seguem a documentação oficial, e vale conferi-la em caso de dúvida.

Git e GitHub: qual é a diferença

Os dois nomes se confundem, mas são coisas diferentes.

  • Git é um sistema de controle de versão distribuído. Ele roda no seu computador, registra as mudanças nos arquivos e guarda o histórico.
  • GitHub é uma plataforma online que hospeda repositórios Git e oferece colaboração: revisão de código, discussão de problemas (issues) e automações. Existem alternativas, como GitLab e Bitbucket.

Em resumo: o Git é a ferramenta; o GitHub é um lugar para guardar e compartilhar o que você faz com ela.

Para que serve o controle de versão

  • Histórico: cada alteração fica registrada, com autor, data e mensagem.
  • Desfazer: você volta a um estado anterior quando algo dá errado.
  • Experimentar sem medo: cria ramificações para testar ideias sem estragar o que funciona.
  • Trabalho em equipe: várias pessoas alteram o mesmo projeto e juntam as mudanças.
  • Backup e portfólio: o código fica salvo online e pode ser mostrado a outras pessoas.

Conceitos básicos

  • Repositório (repo): a pasta do projeto que o Git acompanha, com todo o histórico.
  • Commit: um "retrato" salvo do projeto em determinado momento, com uma mensagem que explica o que mudou.
  • Branch (ramificação): uma linha independente de desenvolvimento. A principal costuma se chamar main.
  • Merge: juntar as mudanças de uma branch em outra.
  • Remoto (remote): uma cópia do repositório hospedada em outro lugar, como o GitHub. O nome padrão é origin.
  • Clone: copiar um repositório remoto para o seu computador.
  • Pull request (PR): um pedido, feito no GitHub, para que as suas mudanças sejam revisadas e incorporadas.

Primeiros passos

1. Instale o Git

Baixe o Git na página oficial (git-scm.com) para o seu sistema. Depois de instalar, abra o terminal e confira:

git --version

2. Configure seu nome e e-mail

Essas informações aparecem em cada commit:

git config --global user.name "Seu Nome"
git config --global user.email "seu-email@exemplo.com"

Se você usa o GitHub, pode escolher o e-mail de privacidade que a plataforma oferece, para não expor seu endereço real nos commits públicos.

3. Crie um repositório

mkdir meu-projeto
cd meu-projeto
git init

O git init cria a estrutura interna do Git na pasta. A partir daí, ela é um repositório.

O fluxo básico: editar, adicionar, salvar

O ciclo do dia a dia tem três movimentos.

  1. Editar: você cria ou altera arquivos.
  2. Adicionar à área de preparação (staging): escolhe o que vai entrar no próximo commit.
  3. Commitar: salva o retrato com uma mensagem.

Exemplo:

echo "# Meu projeto" > README.md
git status
git add README.md
git commit -m "Adiciona README inicial"
git log --oneline

O que cada comando faz:

  • git status mostra o estado atual: o que mudou e o que está preparado.
  • git add coloca o arquivo na área de preparação. git add . adiciona tudo que mudou.
  • git commit -m cria o commit com a mensagem.
  • git log --oneline mostra o histórico resumido.

Como escrever boas mensagens de commit

  • Escreva no imperativo e de forma curta: "Corrige o cálculo do frete".
  • Explique o que e por quê, e não apenas "ajustes".
  • Faça commits pequenos, que representem uma mudança lógica só.

Branches: trabalhar sem medo

Uma branch permite desenvolver uma funcionalidade sem mexer no código principal.

git switch -c nova-funcionalidade

Esse comando cria e muda para a branch nova-funcionalidade. Faça seus commits normalmente. Para voltar à principal:

git switch main

E para trazer as mudanças da branch:

git merge nova-funcionalidade

Quando duas branches alteram o mesmo trecho, ocorre um conflito de merge, e o Git pede que você decida qual versão manter. Veja como resolver mais adiante.

Usando o GitHub

Publicar um projeto

  1. Crie uma conta no GitHub e um repositório novo, sem arquivos iniciais.

  2. Conecte o repositório local ao remoto, com o endereço que o GitHub mostra:

    git remote add origin https://github.com/seu-usuario/meu-projeto.git
    git branch -M main
    git push -u origin main
    
  3. Confira a página do repositório: os arquivos devem aparecer.

O git push envia os commits para o remoto. O -u guarda a associação para que, nas próximas vezes, git push sozinho baste.

Para autenticar, o GitHub não aceita mais a senha da conta em operações de linha de comando. Use uma chave SSH ou um token de acesso pessoal, conforme a documentação. Guarde-os com cuidado, como qualquer credencial, e ative a autenticação em dois fatores na sua conta.

Baixar um projeto existente

git clone https://github.com/usuario/projeto.git

Isso copia o repositório e todo o histórico. Para atualizar a sua cópia depois:

git pull

Pull requests

O fluxo colaborativo mais comum:

  1. Crie uma branch para a sua mudança.
  2. Faça os commits e envie a branch com git push.
  3. No GitHub, abra um pull request explicando o que mudou.
  4. Outras pessoas revisam, comentam e aprovam.
  5. A mudança é incorporada à branch principal.

Em projetos de código aberto, o mais comum é primeiro fazer um fork (uma cópia do projeto na sua conta) e abrir o pull request a partir dele.

Comandos essenciais em uma tabela

ComandoO que faz
git initCria um repositório novo
git clone urlCopia um repositório remoto
git statusMostra o estado dos arquivos
git add arquivoPrepara um arquivo para o commit
git commit -m "mensagem"Salva um commit
git log --onelineMostra o histórico resumido
git diffMostra as alterações ainda não preparadas
git switch -c nomeCria e muda para uma branch
git switch nomeMuda de branch
git merge nomeJunta uma branch na atual
git pullBaixa e integra mudanças do remoto
git pushEnvia commits para o remoto

Como desfazer coisas

Errar faz parte. Estes comandos ajudam, com atenção ao que cada um faz.

  • Descartar mudanças em um arquivo que ainda não foi commitado:

    git restore arquivo.txt
    

    Cuidado: as alterações não salvas naquele arquivo serão perdidas.

  • Tirar um arquivo da área de preparação, mantendo as alterações:

    git restore --staged arquivo.txt
    
  • Desfazer um commit já feito, criando um novo commit que o reverte:

    git revert id-do-commit
    

    É a forma segura para commits que já foram enviados ao remoto, porque não reescreve o histórico.

  • Corrigir a mensagem do último commit (antes de enviá-lo):

    git commit --amend -m "Nova mensagem"
    

Evite comandos que reescrevem o histórico, como git reset --hard e git push --force, até entender bem o que fazem. Eles podem apagar trabalho de forma irreversível, principalmente em repositórios compartilhados.

Ignorando arquivos: o .gitignore

Nem tudo deve ir para o repositório: arquivos temporários, pastas de dependências e, principalmente, segredos, como senhas e chaves. Liste esses padrões em um arquivo chamado .gitignore:

node_modules/
*.log
.env

Se você commitar um segredo por engano, não basta apagá-lo no commit seguinte: ele continua no histórico. O correto é revogar a chave e gerar outra. A mesma cautela vale para tokens de APIs.

Resolvendo um conflito de merge

Quando o Git não consegue juntar automaticamente, ele marca o arquivo assim:

<<<<<<< HEAD
versão da sua branch
=======
versão da outra branch
>>>>>>> nova-funcionalidade

Para resolver:

  1. Abra o arquivo e escolha o que fica, apagando os marcadores (<<<<<<<, =======, >>>>>>>).
  2. Salve o arquivo.
  3. Faça git add arquivo e git commit para concluir o merge.

Editores de código têm ferramentas visuais que facilitam essa escolha.

Problemas comuns de quem está começando

  • "Não sei em que branch estou." Use git status ou git branch.
  • "Esqueci de adicionar um arquivo." Rode git add e faça um novo commit (ou use --amend se ainda não enviou).
  • "O push foi rejeitado." O remoto tem commits que você não tem. Faça git pull, resolva possíveis conflitos e tente de novo.
  • "Commitei algo que não devia." Se for um segredo, revogue. Se for um arquivo grande, remova e configure o .gitignore.
  • "Autenticação falhou no GitHub." Verifique se está usando chave SSH ou token, e não a senha da conta.
  • "O Git não reconhece o comando." Reinstale ou reinicie o terminal para atualizar o caminho do programa.

Boas práticas

  1. Faça commits pequenos e frequentes, com mensagens claras.
  2. Use branches para cada funcionalidade ou correção.
  3. Atualize a branch principal antes de começar, com git pull.
  4. Nunca commite senhas, chaves ou dados pessoais.
  5. Escreva um README que explique o projeto.
  6. Revise suas mudanças com git diff antes de commitar.
  7. Aprenda o básico por completo antes de comandos avançados.

Git e o portfólio

O GitHub funciona como vitrine. Projetos organizados, com README claro e histórico coerente, ajudam a mostrar suas habilidades, como sugerimos no roteiro de como aprender a programar do zero. Dá para usar o mesmo fluxo para projetos de qualquer tipo: código, documentos em texto e configurações.

O Git também é a base de práticas de entrega contínua e de automação de infraestrutura. Se quiser ver onde isso se encaixa, leia sobre Docker e containers.

Perguntas frequentes

Preciso do GitHub para usar o Git?

Não. O Git funciona sozinho, no seu computador. O GitHub, o GitLab e outros serviços servem para hospedar e compartilhar.

Git funciona só com código?

Funciona melhor com arquivos de texto, como código e documentos em Markdown. Arquivos binários grandes, como vídeos, não são o ponto forte do Git.

O que significa "main" e "master"?

São nomes de branch principal. Historicamente era "master", e hoje muitos projetos e o próprio GitHub adotam "main" por padrão. O nome é uma convenção.

Posso usar o Git por uma interface gráfica?

Sim. Editores de código e aplicativos dedicados oferecem interfaces. Entender os comandos, porém, ajuda a saber o que a interface está fazendo.

É seguro apagar a pasta .git?

Ela guarda todo o histórico. Se apagá-la, o projeto deixa de ser um repositório e você perde o histórico local. Só faça isso se tiver certeza.

Conclusão

O Git registra a história do seu projeto e o GitHub a compartilha. O fluxo básico é editar, adicionar e commitar, com branches para trabalhar em paralelo e pull requests para colaborar. Poucos comandos cobrem a maior parte do uso, e cuidado com segredos e com comandos que reescrevem o histórico evita a maioria dos problemas.

Crie um repositório de teste hoje e repita o ciclo várias vezes. A prática fixa mais do que a leitura. Este guia foi revisado em setembro de 2026, e a documentação oficial é a referência para detalhes e novidades.

Fontes

Gostou? Compartilhe:WhatsAppFacebookXLinkedInTelegram
← Ver todos os artigos