Git no dia a dia

Eduardo Lombardi
3 min readOct 5, 2020

Git é uma ferramenta pra gerenciamento de versão e trabalho colaborativo. Todos os comandos aqui serão feitos no terminal.

Photo by Yancy Min on Unsplash

git init

  • Cria um repositório na pasta que você está atualmente.

git add

  • Mova os arquivos desejados para esta pasta ( ou altere algum arquivo que já esteja nela) e adicione eles no repositório com este comando. Você pode adicionar separadamente com git add caminhoDoArquivo ou então adicionar tudo com git add — all

git commit

  • Uma vez tendo tudo adicionado, chegou a hora de "tirar uma foto" do repositório com o commit. Ele gera uma hash única para aquele momento e você deve especificar uma mensagem através do parâmetro -m. Esta mensagem deve ser clara e condizente com o que está sendo adicionado. Esta hash e mensagem servem para que seja possível voltar e deixar os arquivos como naquele exato momento.

git branch

  • o git possui uma linha do tempo principal chamada de master (e posteriormente main). Mas você pode e deve criar outras a partir dela com o comando git branch nomeDaLinhaDoTempo. Assim, seu código fica organizado. Mas não abuse, muitas linhas do tempo fazem com que seja difícil/custoso trazer tudo de volta para a principal.

git reset

  • Fez uma série de alterações e não deu certo? git reset --hard descarta todas as alterações locais feitas e não commitadas até o momento.

Todos esses comandos passados até agora refletem apenas localmente. São os mais básicos e muito utilizados no dia a dia de um desenvolvedor. O gerenciamento de versão está praticamente concluido. Falta a parte do trabalho colaborativo.

git clone

  • Geralmente os repositórios git serão criados em um servidor web disponível na sua rede local ou na internet (ex: github). Para espelhar eles em sua máquina usamos o comando git clone seguido do endereço remoto do repositório. Este comando pede autenticação.

git push

  • Uma vez que fizemos nossos commits, devemos espelhar nossas alterações para que todos possam ver. Fazemos isso com o comando git push, passando geralmente os parametros origin (para referenciar o servidor remoto) e o nome da branch em que estamos trabalhando.

git pull

  • Trabalho colaborativo. Alguém fez alguma coisa, subiu e você está a fim de copiar para a sua versão local do projeto a fim de continuar do ponto em que essa pessoa parou. O comando git pull, seguido de origin e o nome da branch faz com que as alterações presentes no servidor remoto sejam baixadas para sua máquina.

git checkout

  • Quer trocar de linha do tempo? Simples, usa o git checkout nomeDaBranch. Mas lembra que você vai ter que "salvar" as suas alterações primeiro, adicionando e commitando ou descartando.

git merge

  • Deixei este para o final porque é um dos mais complexos. Quando precisamos juntar duas linhas do tempo utilizamos o git merge nomeDaOutraBranch. Ele vai juntar a branch passada como parâmetro com a que estamos atualmente. Pode ser, que nessa junção, duas pessoas tenham alterado a mesma parte do código e a ferramenta não saiba o que fazer. Nesse caso, ela vai avisar quais arquivos estão com conflito e ainda vai mostrar os pedaços para que você escolha qual fica:

>>>>>>>primeira linha do tempo

trecho de código da primeira linha do tempo

========

trecho de código da segunda linha do tempo

<<<<<<< segunda linha do tempo

  • Nesse caso, você tem que apagar os símbolos de <, = e >, deixando o código da maneira correta e mais atualizada possível. Não é difícil mas é trabalhoso. Nunca deixe seus conflitos para o outro dia.

Esses são os comandos mais básicos do git e com o tempo e utilização a gente acaba se acostumando com eles. Eventualmente, pode surgir uma ou outra situação em que precisemos de algo um pouco mais avançado, mas nada que uma boa conversa ou pesquisa no google não resolva.

--

--