0% acharam este documento útil (0 voto)
7 visualizações52 páginas

Git: Versionamento de Código e Comandos

O Módulo 2 aborda o versionamento de código usando Git, incluindo conceitos como stage, commits, logs, histórico, branches, merge e uso do GitHub. O conteúdo é dividido em aulas que ensinam desde comandos básicos até práticas de colaboração em equipe. O módulo também discute a importância de boas práticas na nomeação de commits e branches, além de como resolver conflitos durante o merge.

Enviado por

SIMOES
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
7 visualizações52 páginas

Git: Versionamento de Código e Comandos

O Módulo 2 aborda o versionamento de código usando Git, incluindo conceitos como stage, commits, logs, histórico, branches, merge e uso do GitHub. O conteúdo é dividido em aulas que ensinam desde comandos básicos até práticas de colaboração em equipe. O módulo também discute a importância de boas práticas na nomeação de commits e branches, além de como resolver conflitos durante o merge.

Enviado por

SIMOES
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Módulo 2

Versionamento de
código usando o Git

Gian Souza
MÓDULO 2 – Versionamento de código usando o Git

Conteúdo do módulo
• Stage

• Commits

• Logs

• Histórico

• Branches

• Merge

• Github
Gian Souza
Módulo 2 / Aula 1

Stage
Gian Souza
MÓDULO 2 – Aula 1 - Stage

Conteúdo a aula

• Comandos básicos para usar no


terminal

• Configuração inicial do Git

• Criando um repositório

• Adicionando e removendo arquivos


Gian Souza
MÓDULO 2 – Aula 1 - Stage

Comandos básicos para usar no


terminal
Descrição do comando Powershell Prompt de Comando

Listar o conteúdo da pasta atual ls dir

Limpar o conteúdo do terminal Ctrl + L ou cls cls

Navegar entre pastas cd ./pasta_destino cd ./pasta_destino

Criar uma nova pasta mkdir nome_pasta mkdir nome_pasta

Criar um novo arquivo echo “conteúdo” > [Link] echo “conteúdo” > [Link]

Remover pasta rm –r ./nome_pasta rmdir ./nome_pasta

Remover arquivo rm –r ./[Link] del [Link]


Gian Souza

Ver o conteúdo de um arquivo cat ./[Link] more ./[Link]


MÓDULO 2 – Aula 1 - Stage

Configuração inicial do Git

No terminal, executar os comandos


git config --global [Link] “Seu nome”
git config --global [Link] “Seu e-mail”
Gian Souza
MÓDULO 2 – Aula 1 - Stage

Criando um repositório Git

No terminal, dentro da pasta do projeto,


executar o comando
git init .
Gian Souza
MÓDULO 2 – Aula 1 - Stage

Adicionando e removendo
arquivos

Ao se trabalhar com o Git, não pasta incluir ou


deletar um conteúdo na pasta do projeto, é
necessário adicionar essa mudança ao stage.

Podemos ver os arquivos que estão sendo


considerados pelo Git, que estão no stage,
através do comando:
git status
Gian Souza
MÓDULO 2 – Aula 1 - Stage

Adicionando e removendo
arquivos

Para adicionar um arquivo ao stage do Git, dizer


ao Git que ele deve considerar o arquivo, execute
o comando:
git add nome_do_arquivo
E para remover o arquivo do stage:
git rm --cached nome_do_arquivo
Para adicionar todos os arquivos da pasta no
stage:
git add .
Gian Souza
Módulo 2 / Aula 2

Commits
Gian Souza
MÓDULO 2 – Aula 2 - Commits

Conteúdo a aula

• Salvando alterações

• Padrões para nomear commits

• Changelog
Gian Souza
MÓDULO 2 – Aula 2 - Commits

Salvando alterações

Para salvar as alterações que foram


adicionadas ao stage, usamos o
comando:
git commit – irá abrir um editor de
textos, dentro do terminal
Gian Souza
MÓDULO 2 – Aula 2 - Commits

Salvando alterações
Gian Souza
MÓDULO 2 – Aula 2 - Commits

Salvando alterações

Nesse editor vamos descrever a


alteração que será salva, ex: remoção de
arquivos: [Link] e [Link]

Para salvar o texto usamos: Ctrl + O


Para sair do editor: Ctrl + X
Gian Souza
MÓDULO 2 – Aula 2 - Commits

Salvando alterações

Podemos salvar as alteração, criar um


commit, sem ter que acessar esse editor,
fazemos isso através do comando:
git commit –m “minha mensagem”
Gian Souza
MÓDULO 2 – Aula 2 - Commits

Salvando alterações

Existe um caminho ainda mais curto,


onde podemos adicionar o arquivo ao
stage e já salvar a alteração, para isso
executamos o comando:
git commit –am “minha mensagem”
Gian Souza
MÓDULO 2 – Aula 2 - Commits

Padrões para nomear commits

Existe um padrão que podemos seguir, ao


escrever as mensagens para os commits.

Chore: usado para pequenas tarefas


git commit –m “chore: removendo [Link]”

Fix: correções
git commit –m “fix: correção no cálculo de médias”

Feat: inclusão de funcionalidade


git commit –m “feat: inclusão de função para calcular mediana”

Docs: atualização de documentação


git commit –m “atualizando o [Link]”
Gian Souza
MÓDULO 2 – Aula 2 - Commits

Changelog

Changelog é um arquivo onde


registramos todas as mudanças que
aconteceram em um projeto ao decorrer
do tempo.
Gian Souza
Módulo 2 / Aula 3

Logs
Gian Souza
MÓDULO 2 – Aula 3 - Logs

Conteúdo a aula

• Visualizando o registro de commits


realizados

• Variações na visualização de commits


Gian Souza
MÓDULO 2 – Aula 3 - Logs

Git log

Para visualizar o histórico de commits,


usamos o comando:
git log
Gian Souza
MÓDULO 2 – Aula 3 - Logs

Git log

O registro de um commits é composto


por:
Commit: identificador único do commit
Author: autor do commit
Date: data em que o commit foi feito
Mensagem informado no git commit
Gian Souza
MÓDULO 2 – Aula 3 - Logs

Git log – variações

Para visualizar os últimos dois commits:


git log –n 2*
(ou outro número)
Gian Souza
MÓDULO 2 – Aula 3 - Logs

Git log – variações

Para visualizar uma versão resumida do


registro de commits:
git log --oneline
Gian Souza
MÓDULO 2 – Aula 3 - Logs

Git log – variações

Podemos visualizar o registro de uma forma mais


detalhada solicitando o conteúdo da alteração,
através do comando:
git log --stat
Gian Souza
MÓDULO 2 – Aula 3 - Logs

Git log – variações

É possível combinar as variações, solicitamos o


conteúdo de dois registros com apenas o
identificador do commit:
git log --stat –n 2 --oneline
Gian Souza
Módulo 2 / Aula 4

Histórico
Gian Souza
MÓDULO 2 – Aula 4 - Histórico

Conteúdo a aula

• Desfazendo alterações

• Navegando entre commits

• Revertendo commits
Gian Souza
MÓDULO 2 – Aula 4 - Histórico

Desfazendo alterações

Podemos desfazer alterações em


arquivos que ainda não foram
adicionados ao stage, usando o
comando:
git checkout meu_arquivo
Gian Souza
MÓDULO 2 – Aula 4 - Histórico

Navegando entre commits

Com o Git podemos viajar no tempo, para


o passado, através do comando git
checkout, podemos voltar o conteúdo de
um repositório para o conteúdo de um
determinado commit
git checkout COMMIT_ID
Gian Souza
MÓDULO 2 – Aula 4 - Histórico

Revertendo commits

O Git nos dá a possibilidade de reverter


os commits, uma reversão significa que
outro commit será criado desfazendo a
alteração, se incluímos um arquivo no
commit que queremos reverter, outro
commit será criado removendo este
arquivo.
Fazemos isso através do comando:
git revert HEAD COMMIT_ID
Gian Souza
Módulo 2 / Aula 5

Branches
Gian Souza
MÓDULO 2 – Aula 5 - Branches

Conteúdo a aula

• Visão geral

• Listando as branches

• Criando uma branch

• Convenções para nomear uma branch

• Navegando entre branches


Gian Souza

Deletando uma branch


MÓDULO 2 – Aula 5 - Branches

Branches – Visão geral

Com o Git podemos criar versões


paralelas do nosso projeto, fazemos isso
no Git através da criação de branches,
que pode ser traduzido como galhos,
ramificação, então pensamos em nosso
repositório como uma árvore que pode
possuir diversos galhos.
Com essa funcionalidade podemos fazer
experimentos e trabalhar em equipe de
uma forma organizada.
Gian Souza
MÓDULO 2 – Aula 5 - Branches

Listando as branches do
repositório

Para visualizar todas as branchs que


fazem parte do repositório, execute o
comando:
git branch
Gian Souza
MÓDULO 2 – Aula 5 - Branches

Criando uma branch

Para criar uma branch, executamos o


comando:
git branch nova_branch

Com esse comando será criada uma


nova ramificação do projeto a partir do
estado da branch atual, com uma
variação do comando podemos indicar
uma branch de referência para a sua
criação:
git branch nova_branch branch_referencia
Gian Souza
MÓDULO 2 – Aula 5 - Branches

Convenções para nomear


branches

No dia a dia seguimos um padrão para a


nomenclatura de branches, o que nos
facilita a identificação de seu conteúdo
Gian Souza
MÓDULO 2 – Aula 5 - Branches

Convenções para nomear


branches
hotfix/nome_do_bug: usado para correções
rápidas, exemplo: o botão de adicionar ao
carrinho não funciona, a correção desse bug será
feita numa branch hotfix.

bugfix/nome_do_bug: correção de um bug que


não é um impeditivo ao usuário, não compromete
um fluxo do site.

feature/nome_da_funcionalidade: a adição de
uma funcionalidade será contida nessa nova
Gian Souza

branch, até que ela esteja desenvolvida e


validada, exemplo: feature/add_to_favorites.
MÓDULO 2 – Aula 5 - Branches

Navegando entre branches

Para trocar de branch usamos o


comando:
git checkout nome_branch

Podemos combinar a criação com a troca


de branch com o comando:
git checkout –b nome_branch
A branch nova será criada e nosso
repositório estará baseado nela.
Gian Souza
MÓDULO 2 – Aula 5 - Branches

Deletando uma branch

Para deletar uma branch, executamos o


comando:
git branch –D nome_branch
Gian Souza
Módulo 2 / Aula 6

Merge
Gian Souza
MÓDULO 2 – Aula 6 - Merge

Conteúdo a aula

• Mesclando branches

• Conflitos entre branches


Gian Souza
MÓDULO 2 – Aula 6 - Merge

Mesclando branches

Para mesclar duas branches, trazendo as


atualizações feitas em uma para a outra,
executamos o comando:
git merge nome_branch
Gian Souza
MÓDULO 2 – Aula 6 - Merge

Conflitos entre branches

Apesar do Git ser uma ótima ferramenta


para o trabalho em equipe, ele não pode
impedir que duas pessoas alterem o
mesmo arquivo.

Imagine que o arquivo [Link] foi


alterado na branch X e na branch Y, no
momento em que o merge for realizado o
Git criará um conflito, pois ele não sabe
qual versão considerar, esse conflito
Gian Souza

deverá ser resolvido de forma manual.


Módulo 2 / Aula 7

Github
Gian Souza
MÓDULO 2 – Aula 6 - Github

Conteúdo a aula

• Sobre o Github

• Criando um repositório – projeto já


existente

• Criando um repositório – novo projeto

• Enviando atualizações

• Recebendo atualizações
Gian Souza
MÓDULO 2 – Aula 7 - Github

Github

O Github é um site onde podemos


armazenar nossos repositórios Git, além
do armazenamento ele proporciona
algumas funcionalidades de comunidade,
como favoritar seus repositórios, seguir
usuários e reportar bugs.
Gian Souza
MÓDULO 2 – Aula 7 - Github

Clonando um projeto

Para baixarmos um projeto do Github, o


termo correto é clonar, estando na
página do repositório, clique em code e
escolha a opção HTTPS, copiando o
endereço:
Gian Souza
MÓDULO 2 – Aula 7 - Github

Clonando um projeto

Com o endereço do repositório copiado,


execute o comando:

git clone LINK –l pasta_destino*

* O parâmetro –l é opcional, sem ele será criada uma pasta com o nome do
repositório
Gian Souza
MÓDULO 2 – Aula 7 - Github

Enviando atualizações

Após fazer o commit de nossas


alterações, precisamos envia-las ao
repositório, que está armazenado no
Github, fazemos isso através do
comando:
git push
Gian Souza
MÓDULO 2 – Aula 7 - Github

Recebendo atualizações

Para manter nosso projeto atualizado


com o conteúdo remoto, o conteúdo
presente no Github, executamos o
comando:
git pull
Gian Souza
MÓDULO 2 – Aula 7 - Github

Enviando uma determinada branch

Para enviarmos o conteúdo de outra


branch, que não é a principal, primeiro
mudamos para ela, usando o git
checkout e depois executamos o git push
com um parâmetro:
git push origin nome_da_branch
Gian Souza

Você também pode gostar