Branches: A Realidade Paralela do Seu Código
Branches são o coração do Git e é aí que a maioria dos iniciantes começa a ter medo. Vamos desmistificar as branches: mostrando que uma branch é simplesmente um ponteiro, não uma cópia dos arquivos. Vamos explorar como criar branches, alternar entre elas e mesclar alterações, além de ver a diferença entre fast-forward e merge de três vias com exemplos práticos.
- Você entenderá que uma branch é um ponteiro leve e deixará de ter medo de criá-las por qualquer motivo.
- Você será capaz de criar branches, alternar entre elas e mesclar alterações com o comando merge.
- Você distinguirá entre fast-forward e merge de três vias e entenderá quando cada cenário se aplica.
Phần đầu bài giảng
O Mito da Cópia de Arquivos em Branches
- Um branch não é uma cópia de arquivos, mas um ponteiro leve
- A criação de um branch leva frações de segundo
- Zero custo adicional de armazenamento
- Todos os branches trabalham com os mesmos arquivos
Imagine que cada vez que você cria um branch, seu projeto inteiro é copiado - isso seria um pesadelo para repositórios grandes! Felizmente, o Git é muito mais inteligente. Um branch é apenas um ponteiro para um commit específico no histórico de alterações. Não há duplicação de arquivos, o que torna as operações com branches instantâneas. É como alternar entre diferentes pontos no tempo do seu código, e não criar universos paralelos para cada mudança.
A Estrutura Interna de um Branch
- Branch = arquivo de texto com hash do commit
- Armazenado em .git/refs/heads/
- Tamanho: exatamente 40 caracteres
- Novo branch = novo arquivo com hash
Vamos dar uma olhada nos bastidores do Git. Cada branch é simplesmente um arquivo de texto na pasta .git oculta. Este arquivo contém apenas quarenta caracteres - o hash do último commit no branch. Quando você cria um novo branch, o Git grava o hash do commit atual em um novo arquivo. Todo o processo leva frações de segundo, mesmo que o projeto tenha milhares de arquivos. Agora você entende por que alternar entre branches é instantâneo?
Marcador em vez de cópia de livro
- Branch como um marcador de livro
- Não copia o conteúdo
- Troca instantânea
- Pode criar quantas quiser
Vamos fazer uma analogia com a leitura de um livro. Quando você coloca um marcador em uma página, você não está copiando o livro inteiro, certo? Você está apenas marcando o lugar para voltar depois. Um branch no Git funciona da mesma forma - é uma marcação leve que aponta para um estado específico do seu código. Você pode criar dezenas dessas marcações, e isso não vai ocupar espaço extra no disco. Isso muda completamente a forma como podemos trabalhar com diferentes versões de um projeto simultaneamente.
Bài giảng đầy đủ dành cho thuê bao
Còn 21 slide nữa trong phiên bản đầy đủ.
Video, toàn bộ slide, ghi chú, bài kiểm tra, gia sư AI và phỏng vấn sẽ mở sau khi đăng nhập và đăng ký thuê bao.
Đăng nhập hoặc đăng ký Đăng ký thuê baoNội dung bài giảng
- O Mito da Cópia de Arquivos em Branches
- A Estrutura Interna de um Branch
- Marcador em vez de cópia de livro
- Criando um branch na prática
- Como os branches funcionam no Git
- Criando um novo branch
- Criação e troca rápidas
- O que acontece ao trocar de branch
- Quando a mesclagem de branches ocorre sem conflitos
- Como funciona o fast-forward merge
- Exemplo prático: mesclando feature no main
- Quando a mesclagem de branches não pode ser feita automaticamente
- Como um conflito de mesclagem se parece
- Passos para resolver um conflito
- Por que a mesclagem simples nem sempre funciona?
- Como funciona a mesclagem de três vias
- Criando um commit de mesclagem na prática
- Como a espera prolongada complica o merge
- O perigo de ignorar conflitos de merge
- A maneira correta de resolver conflitos
- Criando uma branch de recurso para uma nova tarefa
- Trabalhando em paralelo em múltiplos branches
- Mesclando alterações com o branch principal
- Conclusão: Ramificações e Merge
Bài viết liên quan đến bài học này
- Lệnh Git: bảng tra cứu với ví dụ dùng hằng ngày
- git checkout, switch và restore: khi nào dùng cái nào
- git merge: cách gộp nhánh và xử lý xung đột
- Nhánh trong Git: git branch, tạo, chuyển và xóa
- git worktree: làm việc với nhiều nhánh cùng lúc
Tất cả bài giảng của khóa học
- Introdução: Git do Zero ao Desenvolvedor Confiante
- Por que o Git é necessário — e por que ele é exigido no mercado de trabalho
- Instalação e Configuração: Preparando o Git para o Primeiro Uso
- Primeiro Repositório: init, add, commit e a Mágica do Índice
- Lendo o histórico: log, diff, show e navegação pelo passado
- Branches: A Realidade Paralela do Seu Código
- Desfazendo Erros: restore, reset, revert — O Caminho Correto e os Perigos
- GitHub e repositórios remotos: seu código na nuvem
- Trabalho em Equipe: Forks, Branches de Funcionalidades e Pull Requests
- Conflitos de Merge: Sem Pânico - Entenda e Resolva
- Processos de Git em equipes reais: qual fluxo de trabalho escolher
- Ferramentas Avançadas: rebase, stash, cherry-pick e tags
- Projeto Final: Simulando o Desenvolvimento em Equipe no Mundo Real