[Aula 02] Introdução ao Controle de Versão

Agenda:

  • Entendendo o controle de versão e sua necessidade.

  • Sistemas de controle de versão: local x centralizado x distribuído.

  • Conhecendo o Git: a ferramenta revolucionária de controle de versão.

1. Entendendo o Controle de Versão

O controle de versão refere-se ao processo de rastrear e controlar mudanças nos arquivos de um projeto. É uma ferramenta crucial para devs, permitindo colaborações eficazes e o gerenciamento de históricos de alterações.

Por que é tão essencial?

  • Colaboração: Permite que várias pessoas trabalhem no mesmo projeto simultaneamente.

  • Rastreamento: Você pode revisitar versões anteriores, entender o que foi alterado e quando.

  • Proteção: Se algo der errado, é fácil voltar a um estado anterior do projeto.

2. Tipos de Sistemas de Controle de Versão

Local

Os sistemas de controle de versão local mantêm um banco de dados local com todas as mudanças no projeto.

🚫 Limitação: Falta de colaboração e alto risco de perda de dados.

Sistema de Arquivos: Local

Centralizado

Os sistemas centralizados, como o SVN, têm um servidor central contendo todas as versões dos arquivos. Os usuários pegam arquivos deste servidor central.

Vantagem: Melhor colaboração em relação ao local.

🚫 Limitação: Se o servidor central falhar, todo o histórico de versões pode ser comprometido.

Sistema de Arquivos: Centralizado

Distribuído

Os sistemas distribuídos, como o Git, permitem que cada pessoas tenha uma cópia local completa do histórico de desenvolvimento.

Vantagem: Robustez, flexibilidade e permite operações offline.

Sistema de Arquivos: Distribuído

3. Introdução ao Git

Git é um sistema de controle de versão distribuído gratuito e de código aberto que pode lidar com tudo, desde pequenos a grandes projetos, com rapidez e eficiência.

Por que Git é revolucionário?

  • Eficiência: O Git é incrivelmente rápido, permitindo operações quase instantâneas.

  • Distribuído: Como mencionado anteriormente, sua natureza distribuída oferece várias vantagens.

  • Integridade de Dados: O Git usa uma estrutura de dados chamada 'snapshot' que garante a integridade do código.

  • Flexibilidade: O Git suporta milhares de ramificações paralelas e a fusão entre elas é uma operação fundamental.

No próximo capítulo, vamos mergulhar no mundo do GitHub e ver como ele se tornou uma plataforma dominante para hospedagem de projetos baseados em Git.

Last updated