Skip to content

Nando2003/git-commands

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 

Repository files navigation

Comandos Git para Iniciantes

Bem-vindo ao guia "Comandos Git para Iniciantes". Neste README.md, Você encontrá uma introdução aos conceitos básicos do Git, a ferramenta de controle de versão mais popular do mundo. Se você está começando sua jornada na área de desenvolvimento, este guia é feito para você. Aqui, você aprenderá como aplicar Git de maneira prática em seus futuros projetos, tornando seu fluxo de trabalho mais organizado e colaborativo.

Quem sou eu?

Olá, meu nome é Fernando Luiz Farias Fontes. Atualmente, estou cursando Ciência da Computação na Universidade Estácio de Sá e faço parte do laboratório Fuzzylab-UVA, onde atuo como desenvolvedor back-end especializado em Django e REST Framework.

Desde cedo, sempre tive uma forte conexão com a tecnologia, mas foi após escrever meu primeiro "Hello World" que realmente me apaixonei por esta área tão incrível, que está presente no nosso dia a dia em todos os lugares. E estou aqui agora para passar um pouco do que eu sei sobre a ferramenta que é indispensável em qualquer projeto minimamente estruturado e organizado, que é o Git.

Configuração Incial

$ git config --global user.name "Seu Username"
$ git config --global user.email "Email da sua conta no github"

O comando git config é usado para configurar variáveis de configuração do Git, e essas variáveis controlam o comportamento do Git em vários aspectos. As configurações user.name e user.email são utilizadas para identificar quem fez um commit dentro de um repositório, sendo informações importantes para atribuir autoria aos commits. Essas configurações são essenciais para garantir a integridade e a rastreabilidade do histórico de commits de um projeto Git.

Iniciando um Repositório Local

$ git init

O git init é um dos comandos mais fundamentais e importantes no Git. Ele é utilizado para criar um novo repositório Git em um diretório existente ou para inicializar um repositório vazio para começar a usar o controle de versão.

Quando o git init é executado em um diretório, o Git cria um subdiretório oculto chamado .git, que contém todos os arquivos necessários para o repositório. Esses arquivos incluem o histórico de revisões, as configurações do repositório e outros metadados que o Git usa para rastrear as alterações no projeto.

image

Verificação do Status

$ git status

O comando git status é utilizado para mostrar o estado de cada arquivo e pasta dentro do seu repositorio local. Os estados que você pode encontrar eles, são:

  • Untracked: são arquivos que existem no repositorio local, mas o Git não está ciente deles. Isso geralmente acontece com novos arquivos que ainda não foram adicionados no controle de versão.
  • Unmodified: são arquivos que existem no repositorio local e não foram editados ou modificados.
  • Modified: são arquivos que foram modificados ou editados no seu repositorio local.
  • Stage: são arquivos que foram adicionados ao índice e estão prontos para serem commitados.

image

Imagem retidada do site Oficial do Git

Adição de arquivos e pastas ao índice

$ git add <arquivo>
$ git add .

O comando git add é utilizado para adicionar arquivos ao índice, preparando-os para serem incluídos no próximo commit. Ele não apenas adiciona arquivos modificados, mas também arquivos untracked ao estado Staged.

Commitando as Alterações

$ git commit -m "Descreva a alteração"

Chegamos no sujeito mais balado do git, o git commit. Esse comando é responsavel por levar as mudanças de um ambiente local para o repositório no git, permitindo a adição de uma mensagem que descreva o que foi alterado. Essa parte é de grande importancia para os desenvolvedores, pois permite que eles documentem as alterações feitas no código, facilitando o entendimento do histórico de desenvolvimento do projeto e ajudando na colaboração em equipe.

Como escrever um commit?

Para aprendermos a escrever commits, precisamos primeiramente entender a padronização.

Um projeto com commits bem organizados é um projeto que documenta um histórico. Ele mostra o que foi feito ao longo do tempo, criando um registro detalhado. Então é necessário que tenha uma padronização como as coisas são entregues para que o código não fique uma bagunça e que todos se entendam.

Algumas tipos de commits:

  • (feat): Incluir um novo recurso.
  • (wip): Indica que você ainda não terminou o que estava fazendo.
  • (fix): Uma correção de bug foi realizada.
  • (refractor): melhorias no código sem alterar a funcionalidade, como na legibilidade.
  • (test): você criou ou corrigiu um teste.
  • (docs): alteração na documentação, por exemplo: eu adicionei mais informação a esse README.md, então meu commit seria:
$ git commit -m "(doc) explicação mais detalhada sobre git commit foi adicionada"

Entendendo como as Branches

As Branches são ramificações no Git que permitem que os desenvolvedores desenvolvam recursos, corrija erros ou experimente com segurança novas ideias em uma área sepada do seu repositório.

Uma Branch é criada a partir de uma existe. Por exemplo, quando temos é branch-padrão, casualmente chamada de main ou master, e precisamos desenvolver o back-end separadamente do front-end então nos criamos branchs diferentes a partir de um ponto de começo e depois unindo-as com um merge na branch-padrão.

Segue exemplo de um sistema monolito, como Django:

Diagrama sem nome drawio (9)

Criando uma Branch

$ git branch <NOME DA BRANCH>

Mudando nome da Branch atual

$ git branch -m <NOME DA BRANCH>

Listando todas as Branchs

$ git branch

Mergiando uma Branch para outra

$ git merge <NOME DA BRANCH>

Cria uma branch e te redireciona para ela

$ git checkout -b <NOME DA BRANCH>

Mudando de Branch

$ git checkout <NOME DA BRANCH>

Repositórios Remotos

Repositórios remotos são repositórios que ficam em um servidor remoto, como o GitHub. Suas principais funcionalidades são para armazenar e compartilhar o código com outras pessoas que colaboram no projeto.


Ligando um Repositório local (origin) a um remoto (GitHub)

$ git remote add origin <URL DO REPOSITORIO REMOTO>

Enviar commits para repositório remoto

$ git push --set-upstream origin master

Caso não exista uma branch-padrão, crie ela usando o código acima.

$ git push 

OBS: Caso queria subir em outra branch digite somente git push <NOME DA BRANCH>.


Atualizar o repositório local de acordo com o repositório remoto (Pull x Fetch)

Há uma diferença entre pull e fetch apesar dos dois atualizarem seu repositorio local.

  • Fetch atualiza seu repositório local com as mudanças do repositório remoto, mas não modifica sua cópia de trabalho ou suas branches locais. Logo, não há chances de dar conflito.
  • Pull atualiza as referências remotas e mescla as mudanças na branch atual, modificando sua cópia de trabalho. Logo, há chances de dar conflito.
$ git fetch 
$ git pull 

OBS: Caso queria subir em outra branch digite somente git pull <NOME DA BRANCH>.

OK. Então como faz para baixar um repositório remoto?

É o comando mais simples da lista, aonde basta abrir um terminal em uma diretorio e simplemente digitar git clone junto com o url do repositório que deseja possuir.

$ git clone <URL DO REPOSITORIO REMOTO>

Referências:

Apostila de Git e GitHub

15 COMANDOS GIT QUE VÃO TE AJUDAR A PROGRAMAR

Git Basics

How to Write Better Git Commit Messages – A Step-By-Step Guide

Sobre ramificações

About

Uma breve explicação sobre git e seus comandos

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published