Um Guia Básico de Git e GitHub
Introdução
Git é um sistema de controle de versão distribuído que permite rastrear alterações no código-fonte durante o desenvolvimento de software. GitHub é uma plataforma baseada na nuvem que hospeda repositórios Git, facilitando a colaboração entre desenvolvedores. Dominar ambos é fundamental para qualquer desenvolvedor, seja iniciante ou experiente.
Conceitos Básicos
Repositório (Repo): Local onde o código é armazenado.
Commit: Registro de alterações feitas no código.
Branch (Ramificação): Linha independente de desenvolvimento.
Merge: Combina alterações de diferentes branches.
Clone: Copia um repositório remoto para sua máquina local.
Push e Pull: Envia e recebe alterações entre repositórios locais e remotos.
Configuração Inicial
Instalação do Git:
Baixe e instale o Git do site oficial.
Configuração do Usuário:
git config --global user.name "Seu Nome"
git config --global user.email "[email protected]"
Fluxo de Trabalho Básico com Git e GitHub
Criar um Novo Repositório no GitHub:
Acesse o GitHub e crie um novo repositório.
Clonar o Repositório:
git clone https://github.com/seuusuario/seurepositorio.git
Navegar até o Diretório do Repositório:
cd seurepositorio
Criar uma Nova Branch para Desenvolver uma Funcionalidade:
git checkout -b minha-nova-funcionalidade
Fazer Alterações no Código e Salvar os Arquivos.
Adicionar Alterações ao Índice (Staging Area):
git add .
Comitar as Alterações:
git commit -m "Adiciona nova funcionalidade X"
Enviar as Alterações para o GitHub:
git push origin minha-nova-funcionalidade
Abrir um Pull Request no GitHub:
Acesse o repositório no GitHub e clique em "Compare & pull request".
Mesclar o Pull Request após Revisão:
Após a aprovação, faça o merge da branch.
Conclusão
Git e GitHub são ferramentas indispensáveis no desenvolvimento de software moderno. Compreender seus fundamentos e explorar recursos avançados aprimora a colaboração e a eficiência. Independentemente do seu nível atual, sempre há algo novo para aprender e práticas a serem aprimoradas. Continue explorando, praticando e colaborando com outros desenvolvedores para maximizar o potencial dessas ferramentas.