CodeGym /Curso Java /Python SELF PT /Fundamentos do Git

Fundamentos do Git

Python SELF PT
Nível 12 , Lição 1
Disponível

9.0 Um pouco de história

Desde sua criação, a ferramenta Git DVCS tinha um branch padrão chamado master. Cada repositório Git tinha o branch master, a menos que o desenvolvedor tomasse passos explícitos para removê-lo, o que era raro, pois o branch master desempenha um papel importante no mundo do desenvolvimento de software.

O uso dos termos master e slave (mestre e escravo) na indústria da computação chamou atenção geral no verão de 2020, em meio a diversos protestos e crescentes tensões sociais. Durante as discussões públicas, surgiram várias alternativas para master, entre elas default e primary. No entanto, o termo mais popular se tornou main.

O GitHub tomou medidas e abandonou o termo master na inicialização do repositório Git. A mudança do GitHub de master para main pode ser feita nas configurações da conta Repositories ou com o comando:

$ git branch -m master main

Nas aulas, continuamos a usar o termo master. Mais detalhes sobre a transição podem ser encontrados nos seguintes links:

9.1 O que é Git e por que você precisa dele

Git é um poderoso sistema de controle de versões, usado para rastrear mudanças no código-fonte durante o desenvolvimento de software. Permite que desenvolvedores salvem diferentes versões de arquivos e coordene o trabalho de várias pessoas em um projeto comum.

Conceitos básicos do Git:

Repositório

Repositório (ou "repo") é onde fica guardada toda a história do projeto, incluindo todas as mudanças e versões dos arquivos. No Git, o repositório inclui o diretório de trabalho, o índice (ou stage) e o banco de dados de objetos.

Commits

Commit (commit) é o estado salvo do projeto. Cada commit no Git contém informações sobre quais mudanças foram feitas no projeto, por quem e quando. Commits formam a história do projeto e permitem retornar a qualquer versão anterior.

Branches

Branch (branch) é uma linha de desenvolvimento independente. Por padrão, o Git cria o branch main (anteriormente master). Você pode criar novos branches para desenvolver novas funcionalidades ou correções, e depois uní-los de volta ao branch principal.

Merge e Rebase

Merge (merge) e Rebase (rebase) são duas maneiras de integrar mudanças de um branch a outro. Merge une as histórias de dois branches, criando um novo commit, enquanto o rebase move os commits de um branch para o topo de outro, alterando a história dos commits.

9.2 Comandos básicos do Git

Aqui está uma tabela com os principais comandos do Git para gerenciamento de versões:

Comando Descrição
git init Inicializa um novo repositório Git no diretório atual.
git clone Clona um repositório a partir de uma URL em um novo diretório.
git add Adiciona arquivos ao índice para o próximo commit.
git commit Registra mudanças preparadas no repositório.
git push Envia mudanças do repositório local para o remoto.
git pull Atualiza o branch atual com a última versão do repositório remoto.
git branch Mostra, cria ou deleta branches.
git merge Une mudanças do branch especificado ao branch atual.
git rebase Move mudanças para uma nova base (geralmente outro branch).

Esses comandos representam as principais ferramentas no Git, permitindo gerenciar mudanças no código, branches e merges em projetos de qualquer tamanho. Vamos explorá-los mais detalhadamente nas próximas aulas.

9.3 Três locais de armazenamento de código

Quando você estiver usando um sistema de controle de versão para seu código, seu código, grosseiramente falando, será armazenado em três locais:

1. Repositório remoto:

É o local centralizado de armazenamento do seu código, geralmente hospedado em serviços como GitHub, GitLab ou Bitbucket. Eles fornecem o armazenamento centralizado de código e são a base para o trabalho colaborativo.

Repositórios remotos permitem que desenvolvedores compartilhem suas mudanças, sincronizem esforços e mantenham o histórico de alterações do projeto. Além disso, o repositório remoto serve como ponto de integração para processos de automação, como construção, teste e implantação de aplicativos.

2. Repositório local:

Repositório local é a sua cópia pessoal do código, armazenada no seu computador. Nesse repositório, você pode realizar todas as operações do Git (commits, branches, merges) sem necessitar de uma conexão com a internet.

Repositórios locais permitem que desenvolvedores trabalhem de forma isolada de colegas, experimentem, criem novas funcionalidades ou corrijam erros antes que as mudanças sejam unidas (merge) e enviadas para o repositório remoto.

3. Diretório de trabalho:

O diretório de trabalho no seu computador contém os arquivos atuais do projeto, nos quais você está trabalhando no momento. É o local onde você pode ver e modificar arquivos, adicionar novas funcionalidades ou corrigir erros.

Após fazer alterações, você pode adicioná-las ao índice (staging area) e depois registrá-las no repositório local. O diretório de trabalho está associado ao branch atual no seu repositório e mudar de branches altera o conteúdo do diretório de trabalho.

Esses componentes juntos fornecem uma infraestrutura poderosa para gestão de código-fonte, permitindo que desenvolvedores gerenciem o histórico do projeto, colaborem e compartilhem a responsabilidade pelo código.

9.4 GitHub, o repositório gratuito mais popular

GitHub é a principal plataforma web para hospedagem de código-fonte, usando o sistema de controle de versões Git. Fundada em 2008, ela rapidamente se tornou uma das principais ferramentas para desenvolvedores em todo o mundo.

O GitHub permite que usuários criem repositórios para gerenciar projetos, controlem e acompanhem mudanças no código, colaborem com outros desenvolvedores e desenvolvam de forma aberta ou privada. Ele oferece funcionalidades como forks, branches, pull requests e merges, facilitando a colaboração em projetos.

O GitHub também inclui funcionalidades para rastreamento de problemas, solicitações de funcionalidades, gerenciamento de tarefas e wiki para cada projeto. A plataforma se integra com inúmeras ferramentas e serviços, oferecendo amplas possibilidades para automação de desenvolvimento, teste e implantação de aplicações.

O GitHub apoia uma vasta comunidade de desenvolvedores, onde práticas de programação, gerenciamento de projetos e muito mais são ativamente discutidos. Isso faz dele não apenas uma ferramenta de gerenciamento de projetos, mas também um centro comunitário onde desenvolvedores podem compartilhar conhecimento e experiências.

9.5 Registrando-se no GitHub

Passo 1. Acesse https://github.com

Passo 2. Registre-se…

Passo 3. Clique no botão "New" para criar um novo repositório.

Passo 4. Forneça o nome do repositório e configure suas opções.

Passo 5. Adicione um arquivo README ao projeto - ele será útil no futuro.

Passo 6. Clique em "Create repository".

Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION