Skip to content

Latest commit

 

History

History
415 lines (270 loc) · 5.45 KB

File metadata and controls

415 lines (270 loc) · 5.45 KB

📘 Git — Manual Profissional para Iniciantes

Guia completo, organizado e comentado para uso acadêmico e profissional.


📑 Sumário


1. Conceitos Básicos do Git

O Git controla versões de arquivos através de três áreas principais:

📂 Working Directory

Arquivos físicos no seu computador.

📦 Staging Area (Index)

Área de preparação para o próximo commit.

🗂️ Repositório (.git)

Local onde o histórico definitivo é armazenado.

Fluxo visual:

Working Directory → Staging Area → Repository

2. Configuração Inicial do Ambiente

Executar apenas uma vez por máquina.

# Configurar nome
git config --global user.name "Seu Nome"

# Configurar email
git config --global user.email "seu@email.com"

# Definir VS Code como editor padrão
git config --global core.editor "code --wait"

# Listar configurações
git config --list

3. Diagnóstico de Conexão e SSH (Caso Real)

3.1 Testar conexão SSH

ssh -T git@github.com

Resposta esperada:

Hi usuario! You've successfully authenticated...

Se funcionar, sua chave SSH está correta.


3.2 Verificar URL do repositório

git remote -v

Exemplo HTTPS (não recomendado):

https://github.com/user/repositorio.git

Exemplo SSH (recomendado):

git@github.com:user/repositorio.git

3.3 Alterar HTTPS para SSH

git remote set-url origin git@github.com:usuario/repositorio.git

4. Comandos Fundamentais

4.1 Inicialização

git init

Cria um repositório local.

git clone URL

Clona um repositório remoto.

git clone --depth 1 URL

Clone rápido sem histórico completo.


4.2 Verificação de estado

git status

Mostra:

  • arquivos modificados
  • arquivos novos
  • arquivos staged
  • branch atual

4.3 Adicionar arquivos

Adicionar tudo:

git add .

Adicionar arquivo específico:

git add arquivo.txt

Adicionar parcialmente:

git add -p

4.4 Commit

git commit -m "mensagem"

Editar último commit:

git commit --amend

5. Comandos Intermediários

5.1 Branches

Listar:

git branch

Criar nova:

git switch -c nova-branch

Trocar:

git switch main

Merge:

git merge feature

5.2 Sincronização remota

Baixar atualizações:

git fetch origin

Baixar e mesclar:

git pull origin main

Enviar commits:

git push origin main

6. Comandos Avançados

6.1 Reset

Soft (mantém alterações):

git reset --soft HEAD~1

Hard (apaga tudo):

git reset --hard HEAD~1

⚠️ Cuidado: o hard remove código.


6.2 Revert

Forma segura de desfazer commit:

git revert HASH

Cria um novo commit revertendo o anterior.


7. Inspeção, Diagnóstico e Manutenção

Histórico resumido:

git log --oneline --graph

Ver autor por linha:

git blame arquivo.txt

Recuperar commits perdidos:

git reflog

8. Boas Práticas

✔ Commits atômicos

Um commit = uma alteração lógica

Exemplo:

Adiciona login
Corrige footer
Atualiza CSS

✔ Mensagens padronizadas

Formato recomendado:

tipo: descrição

Exemplos:

feat: add login page
fix: correct footer spacing
docs: update git manual
style: format markdown file

✔ Evite force push

Não recomendado:

git push --force

Seguro:

git push --force-with-lease

✔ Use .gitignore

Exemplo:

venv/
__pycache__/
.env
node_modules/
*.log
*.sqlite3

🚀 Fluxo Profissional

Fluxo mais usado no dia a dia:

git pull
git add .
git commit -m "mensagem"
git push

🧠 Fluxo Completo

git status
git pull
git add .
git commit -m "mensagem clara"
git push origin main

📌 Convenção de Commits (Profissional)

Tipo Uso
feat nova funcionalidade
fix correção de bug
docs documentação
style formatação
refactor refatoração
chore ajustes gerais

Exemplo:

git commit -m "docs: format git manual"

🏁 Final

Este manual cobre:

  • Conceitos do Git
  • Configuração inicial
  • SSH profissional
  • Comandos essenciais
  • Comandos intermediários
  • Comandos avançados
  • Diagnóstico
  • Boas práticas
  • Fluxo profissional

Documento pronto para uso acadêmico e profissional.