-
1. Primeiros passos
- 1.1 Sobre Controle de Versão
- 1.2 Uma Breve História do Git
- 1.3 Noções Básicas de Git
- 1.4 Instalando Git
- 1.5 Configuração Inicial do Git
- 1.6 Obtendo Ajuda
- 1.7 Resumo
-
2. Git Essencial
-
3. Ramificação (Branching) no Git
- 3.1 O que é um Branch
- 3.2 Básico de Branch e Merge
- 3.3 Gerenciamento de Branches
- 3.4 Fluxos de Trabalho com Branches
- 3.5 Branches Remotos
- 3.6 Rebasing
- 3.7 Sumário
-
4. Git no Servidor
- 4.1 Os Protocolos
- 4.2 Configurando Git no Servidor
- 4.3 Gerando Sua Chave Pública SSH
- 4.4 Configurando o Servidor
- 4.5 Acesso Público
- 4.6 GitWeb
- 4.7 Gitosis
- 4.8 Gitolite
- 4.9 Serviço Git
- 4.10 Git Hospedado
- 4.11 Sumário
-
5. Git Distribuído
-
6. Ferramentas do Git
- 6.1 Seleção de Revisão
- 6.2 Área de Seleção Interativa
- 6.3 Fazendo Stash
- 6.4 Reescrevendo o Histórico
- 6.5 Depurando com Git
- 6.6 Submódulos
- 6.7 Merge de Sub-árvore (Subtree Merging)
- 6.8 Sumário
-
7. Customizando o Git
- 7.1 Configuração do Git
- 7.2 Atributos Git
- 7.3 Hooks do Git
- 7.4 Um exemplo de Política Git Forçada
- 7.5 Sumário
-
8. Git e Outros Sistemas
- 8.1 Git e Subversion
- 8.2 Migrando para o Git
- 8.3 Resumo
-
9. Git Internamente
Chapter 3
Ramificação (Branching) no Git
Quase todos os VCS têm alguma forma de suporte a ramificação (branching). Criar um branch significa dizer que você vai divergir da linha principal de desenvolvimento e continuar a trabalhar sem bagunçar essa linha principal. Em muitas ferramentas VCS, este é um processo um pouco caro, muitas vezes exigindo que você crie uma nova cópia do seu diretório de código-fonte, o que pode levar um longo tempo para grandes projetos.
Algumas pessoas se referem ao modelo de ramificação em Git como sua característica "matadora", e que certamente o destaca na comunidade de VCS. Por que ele é tão especial? A forma como o Git cria branches é inacreditavelmente leve, fazendo com que as operações com branches sejam praticamente instantâneas e a alternância entre os branches seja tão rápida quanto. Ao contrário de muitos outros VCSs, o Git incentiva um fluxo de trabalho no qual se fazem branches e merges com frequência, até mesmo várias vezes ao dia. Compreender e dominar esta característica lhe dará uma ferramenta poderosa e única e poderá literalmente mudar a maneira de como você desenvolve.