-
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 9
Git Internamente
Você pode ter pulado para este capítulo a partir de um capítulo anterior, ou você pode ter chegado aqui depois de ler o resto do livro — em ambos os casos, este é o lugar onde você vai conhecer o funcionamento interno e implementação do Git. Descobri que aprender esta informação era de fundamental importância para a compreensão de quanto o Git é útil e poderoso, mas outros argumentaram que pode ser confuso e desnecessariamente complexo para iniciantes. Assim, eu fiz essa discussão o último capítulo do livro para que você possa lê-lo mais cedo ou mais tarde, em seu processo de aprendizagem. Deixo isso para você decidir.
Agora que você está aqui, vamos começar. Primeiro, se ainda não for claro, o Git é fundamentalmente um sistema de arquivos de conteúdo endereçavel com uma interface de usuário VCS escrito em cima dele. Você vai aprender mais sobre o que isto significa daqui a pouco.
Nos primeiros dias do Git (principalmente antes da versão 1.5), a interface de usuário era muito mais complexa, pois enfatizou este sistema de arquivos, em vez de um VCS. Nos últimos anos, a interface do usuário tem sido aperfeiçoada até que ela se torne tão limpa e fácil de usar como qualquer outro sistema; mas, muitas vezes, o estereótipo persiste sobre a UI antiga do Git que era complexa e difícil de aprender.
A camada de sistema de arquivos de conteúdo endereçável é incrivelmente interessante, então eu vou falar dela primeiro neste capítulo; então, você vai aprender sobre os mecanismos de transporte e as tarefas de manutenção do repositório.