José Carlos Teles - Desenvovledor Backend Pl.
Gama Academy
É uma ferramenta de versionamento de código, criado pelo Linus Torvald. VCS - Version Control System
- Registro e listagem de alterações no projeto
- Reverter para versões anteriores
- Comparar ou lembrar de versões anteriores
- Registrar altor da alteração
Aquele famoso ctrl + c e ctrl +v
Resume-se em criar pastas e dados duplicados para que dessa forma seja possível realizar alterações sem prejucar as outras versões
Vantagens | Desvantagens |
---|---|
Mais fácil | Menos produtivo |
Menos seguro | |
Falta de trabalho compartilhado |
Um sistema compartilhado com auxilio de um servidor.
Vantagens | Desvantagens |
---|---|
Maior controle das atividades | Maior custo para manter |
Várias pessoas trabalhando no mesmo projeto | Maior preocupação com segurança |
Projetos não ficam na máquina e sim no servidor |
Git, Mercurial, são exemplos desse tipo de sistema a ideia deles é pegar o melhor dos dois mundos, a facilidade do sistema local e a capacidade de várias pessoas trabalhando no projeto do sistema centralizado.
Vantagens | Desvantagens |
---|---|
Repositório local e remoto | Maior curva de aprendizado |
Mais seguro (pois são projetos abertos ou mantidos por grandes palyers) | Mais limitação de controle |
É o local onde ficam armazendas todas ramificações e commits do nosso git
tudo fica armazenado dentro de uma pasta oculta .git
git init
Vamos criar um repositório no github que será o nosso repositório remoto.
git clone <url>
O commit é um comentário na história do nosso repositório, onde explicamos o que foi feito e deixamos marcado na linha do tempo.
Adicionando alterações
git add .
Adicionando arquivos "solitários"
git add FILENAME.EXTENSION
Adicionando arquivo por extensão
git add *.EXTENSION
Realizando commit
git commit -m "first commit"
Agora vamos ver nosso comit usando o git log
git log
Filtrando busca por datas
git log --since=2023-11-01
git log --until=2023-11-01
Filtrando busca por autor
git log --author=devjosecarlosteles
Filtrando pro texto
git log --grep="first"
Quando eu faço uma mudança num arquivo eu estou deixando ele no estado de "modified", quando eu uso o git add eu estou deixando arquivo com o estado de "staged" e por fim quando eu comito esse arquivo ele entra no estado "commited"
Usamos git status para ver os estados dos nossos arquivos.
Commit | Descrição |
---|---|
Build | Qualquer alteração que impactam exatamente a build, novas dependências, adição de ferramentas. |
docs | alterações na documentação/td> |
docs | alterações na documentação/td> |
refactor | Refatorações, ajustes na qualidade do código e implementação de "clean code" |
feat | Features (novidades no código), novas funcionalidades na aplicação |
fix | Correção de bugs |
git restore FILENAME.EXTENSION
Cuidados: ao fazer você pode adicionar novos arquivos no seu último commit
git commit --amend -m "new message"
git reset hash --hard
git reset HEAD
Criando universos parelelos
git branch branchname
Viajando entre universos
git branch branchname
git switch branchname
Branch | Descrição |
---|---|
main | Seu ambiente principal |
develop | |
staging | |
homolog |
Baixando dados do nosso repositório remoto
git pull
Unificando universos paralelos
git merge branchname
- Github desktop
- Git leans
- commitlint