Git e seus principais comandos

Que tal um curso que reúne Programação Python,
Projetos Reais e Dicas de Carreira?

Salve salve Pythonista!

Nesse post você vai dominar uma ferramenta essencial na vida de todo desenvolvedor de software: o Git!

Aqui você verá:

  • Quando e quem criou o git,
  • As diferenças entre o Git e o Github (muitas pessoas confundem os dois),
  • Como instalá-lo em sua máquina,
  • Seus principais comandos (como configurá-lo com git config, o que é e como criar uma branch com git branch, e muito mais!)

Então vamos nessa!

Vá Direto ao Assunto…

Introdução

Git é uma ferramenta de linha de comando (que também possui interfaces visuais).

Foi criada em 2005 pelo nosso querido Linus Torvalds para auxiliar o desenvolvimento do kernel do Linux e é mantida atualmente por Junio Hamano.

Linus Torvalds

Git é um software instalado localmente e não possui gerenciamento de usuários.

Git foca em resolver o problema do versionamento, compartilhamento e desenvolvimento compartilhado de códigos-fonte.

Diferenças entre Git e Github

Primeiro é importante salientar: Git e GitHub não são a mesma coisa.

Git vs Github

Git é tudo isso que falamos aqui em cima :point_up:

Já o GitHub é uma empresa fundada em 2008 que faz ferramentas que se integram ao git.

Você não precisa do GitHub para usar o git, mas não pode usar o GitHub sem usar o git.

Existem muitas outras alternativas ao GitHub, como GitLab, BitBucket e soluções gerenciadas localmente (geralmente em empresas que possuem códigos sensíveis e confidenciais).

Todos eles são referidos no “vocabulário git” como “remotos” e todos são completamente opcionais.

Você não precisa usar um controle remoto para usar o git, mas facilitará o compartilhamento de seu código com outras pessoas :wink:

Nomenclaturas importantes

Antes de começarmos, é importante se acostumar com a nomenclatura do Git:

  • Repositório: É onde seu código “vive”. Um repositório pode ser visto como um projeto dentro do Git, ou seja: cada repositório tem suas próprias dependências, suas bibliotecas, seu código, sua linguagem de programação e etc.
  • Branch: É um conceito central do Git! Todo repositório inicia com uma branch (do inglês tronco - como se fosse um tronco de uma árvore mesmo) chamada main (antiga master). A partir desse “entroncamento” principal, outras branches são criadas para dar vida à outras funcionalidades e alterações no código.
  • Commit: É uma alteração no código. Possui um hash - que é um identificador único, um autor (o criador do commit) e uma mensagem que diz o que foi feito naquele commit, por exemplo: "Altera cor do botão de Login".
  • Servidor Remoto: É o servidor central que vai disponibilizar o código para outros desenvolvedores. Assim como foi dito ali em cima, existem diversas plataformas, como Github, Gitlab e BitBucket.

Agora que já sabe o que é Git, suas principais diferenças para o Github e seu vocabulário, vamos instalá-lo!

INVISTA NA PROFISSÃO DO FUTURO PRESENTE! Aprenda Python do básico ao profissional com muita mão na massa, ou melhor, no código!

Instalação do Git

Para fazer a instalação, visite o site oficial do Git clicando aqui e faça o download específico para seu Sistema Operacional.

Após sua instalação, vamos, finalmente, para seus principais comandos!

:point_right: Quer aprender de verdade?

Então execute cada comando aqui embaixo e vá aprendendo junto!

Principais comandos do Git

Vamos começar ṕelo começo de tudo, pelo comando que utilizamos para configurar algumas informações muito importantes: o git config!

Comando git config

Este comando é utilizado para configura o nome do autor e endereço de email que serão usados nos seus commits.

1
2
git config --global user.name "Nome"
git config --global user.email [email protected]

Comando git init

Comando utilizado para criar novos repositórios.

Primeiro vá para a pasta raiz do projeto que será o novo repositório e execute o seguinte comando.

1
git init .

Com isso, será criada uma pasta .git na raiz do repositório que serve para gerenciamento do próprio Git.

Dica: NÃO MEXA NELA! :laughing:

Comando git clone

Cria uma cópia local de um repositório remoto.

1
git clone {caminho_repositorio}

Exemplo, a Python Academy tem um repositório no Github com várias dicas tops de projetos.

Você pode clonar um projeto localmente para ver o código, executar e incrementar através do seguinte comando:

1
git clone https://github.com/PythonAcademyBrasil/Dicas.git

Dessa forma, você terá uma cópia do código localmente para brincar! :heart_eyes:

Comando git add

Adiciona um ou mais arquivos modificados localmente à área de stagging (Index) para serem incluídos no commit.

1
2
git add {nome arquivo}
git add *

Ah, esse assunto (área de stagging, index e mais) será tratado no próximo Post, sobre o “Fluxo de Trabalho no Git”.

Quer ser avisado e não perder uma atualização da Python Academy? Então aproveita a oportunidade abaixo e venha fazer parte!

Comando git commit

Confirma as mudanças localmente (ainda não altera o servidor remoto):

1
git commit -m "Mensagem do commit"

Comando git push

Agora sim, envia as alterações feitas (commits) em uma branch específica ou em todas as branches (parâmetro --all) para o servidor remoto.

1
2
git push {nome remoto} {branch}
git push --all

Comando git status

Mostra o estado da sua branch atual, lista os arquivos que você já alterou e aqueles que precisam ser adicionados à um commit.

1
git status

Veja um exemplo:

Git status

Comando git branch

Comando utilizado para gerenciamento de branches. Com ele é possível listar, criar ou deletar branches.

  • Criar uma nova branch: git branch {nome da branch}
  • Listar branches: git branch
  • Deletar uma branch: git branch -D {nome da branch}

Comando git checkout

Comando utilizado para trocar entre as branches do seu projeto.

Se utilizado o parâmetro -b cria uma nova branch e já troca sua branch atual para esta.

1
2
git checkout {branch}
git checkout -b {nova branch}

Comando git merge

Combina as mudanças de uma branch em outra.

1
git merge {branch de origem}

Esse comando vai trazer todas as alterações de outra branch para sua branch atual.

Comando git log

Traz o histórico de alterações da branch atual.

1
git log

BÔNUS: Comando git log bombadão :muscle:

Traz o histórico de alterações da branch atual com uma visualização muito mais útil!

1
git log --decorate --oneline --all --graph

Veja a saída:

Git log

Cada parâmetro altera a saída do comando. Veja cada significado:

  • --decorate: Altera a saída, decorando-a para ficar visualmente mais bem organizada.
  • --oneline: Um commit por linha
  • --all: Traz todos os commits de todas as branches
  • --graph: Estiliza a saída em formato de grafo.

Para saber todos os parâmetros do comando basta usar git [COMANDO] --help, por exemplo: git log --help :wink:

Conclusão

Nesse post você aprendeu como utilizar os principais comandos do Git!

Saber utilizá-lo é crucial para sua carreira de Pythonista de sucesso!

Se ficou com alguma dúvida, fique à vontade para deixar um comentário no box aqui embaixo! Será um prazer te responder! :wink:

Gostou do conteúdo? Compartilha aí!

Que tal um curso que reúne Programação Python,
Projetos Reais e Dicas de Carreira?