Article image
Pedro Agostini
Pedro Agostini31/10/2024 15:38
Compartilhe

Versionamento de Códigos com Git e GitHub

  • #GitHub
  • #Git

O Que é Git?

Git é um sistema de controle de versão distribuído. Ele registra o histórico de modificações de um projeto, permitindo que desenvolvedores acompanhem e revertam mudanças, além de facilitar o trabalho colaborativo entre diferentes membros da equipe.

Características do Git

  • Controle Local e Distribuído: Cada desenvolvedor possui uma cópia completa do repositório, incluindo o histórico, em seu próprio computador.
  • Alto Desempenho: A maioria das operações são realizadas localmente, o que torna o Git extremamente rápido.
  • Rastreabilidade e Reversibilidade: Cada mudança é rastreada com precisão, permitindo o retorno a versões anteriores.

Principais Comandos do Git

1. Inicialização de um Repositório

Para iniciar o versionamento de um projeto, basta navegar até a pasta do projeto e inicializar um repositório Git:

      $ git init

2. Configuração Inicial do Usuário

Configure seu nome e email, que serão associados aos seus commits:

      $ git config --global user.name "Seu Nome" 
      $ git config --global user.email "seuemail@example.com"

3. Status dos Arquivos

Para verificar o estado dos arquivos no repositório (se estão prontos para commit ou ainda precisam ser adicionados), utilize:

      $ git status

4. Adicionar Arquivos ao Controle de Versão

Para adicionar arquivos ao índice, que é o "preparatório" para o commit, use o comando git add:

      $ git add <nome_do_arquivo>
      # Ou para adicionar todos os arquivos
      $ git add .

5. Commitar Mudanças

O commit salva as mudanças, criando um ponto de restauração com uma mensagem que descreve a alteração:

      $ git commit -m "Descrição da mudança"
  • Emendar um Commit: Se precisar ajustar o último commit (corrigir ou adicionar mais arquivos):
          $ git commit --amend -m "Nova descrição"

6. Visualizar o Histórico

Para ver o histórico de commits e mudanças realizadas:

      $ git log

7. Comparação de Diferenças

O comando diff mostra as diferenças entre arquivos no repositório e o índice, sendo útil para revisões antes de um commit:

      $ git diff

8. Clonar um Repositório

Para obter uma cópia de um repositório remoto (por exemplo, no GitHub) para seu computador:

      $ git clone <link_do_repositorio>

9. Configuração de Repositório Remoto

Conecte seu repositório local a um repositório remoto (como o GitHub) para facilitar o compartilhamento:

      $ git remote add origin <link_do_repositorio>

10. Envio de Alterações para o Repositório Remoto

Após configurar o repositório remoto, você pode enviar alterações locais com:

      $ git push -u origin main

11. Atualização do Código Local

Para obter as últimas atualizações do repositório remoto:

      $ git pull origin main

12. Trabalhando com Branches (Ramificações)

Branches permitem o desenvolvimento paralelo e independente de funcionalidades:

      $ git branch <nome_da_branch>     # Cria uma nova branch
      $ git checkout <nome_da_branch>   # Alterna para a branch criada
      $ git checkout -b <nome_da_branch> # Cria e muda para a nova branch

13. Mesclagem de Branches

Para integrar mudanças de uma branch no código principal (geralmente a main):

      $ git checkout main
      $ git merge <nome_da_branch>

14. Rebase

A operação de rebase permite reescrever o histórico de commits, reorganizando-o em relação a outra branch:

      $ git checkout <branch_de_trabalho> 
      $ git rebase main

O Que é GitHub?

GitHub é uma plataforma de hospedagem de repositórios Git que adiciona funcionalidades sociais e colaborativas. Ele permite que desenvolvedores compartilhem seus projetos, colaborem e aproveitem funcionalidades como pull requests e revisão de código.

Principais Funcionalidades do GitHub

  • Pull Requests: Permite que colaboradores proponham mudanças ao projeto. Após revisadas, essas mudanças podem ser mescladas ao código principal.
  • Revisão de Código: Outros desenvolvedores podem revisar as mudanças propostas, garantindo que o código siga as práticas recomendadas antes de ser integrado.
  • Issues (Problemas): É uma ferramenta para reportar bugs, sugerir melhorias e organizar tarefas.
  • GitHub Actions: Permite automação de tarefas, como integração contínua, testes automáticos e deploys.

Como Utilizar Git e GitHub Juntos?

Para compartilhar um projeto local com a equipe ou torná-lo público no GitHub:

  • Criar um Repositório no GitHub: Acesse o GitHub, clique em "New Repository" e siga as instruções.
  • Conectar o Repositório Local ao GitHub: Após criar o repositório no GitHub, copie o link do repositório e execute o comando:
  $ git remote add origin <link_do_repositorio>
  • Enviar o Código para o GitHub: Esse comando envia o código local para o repositório remoto no GitHub, tornando-o acessível a outros desenvolvedores.
   $ git push -u origin main

Boas Práticas no Uso de Git e GitHub

  • Faça Commits Pequenos e Frequentes: Facilita a rastreabilidade e reduz o risco de conflitos de merge.
  • Utilize Mensagens de Commit Descritivas: Escreva mensagens claras, que ajudem a identificar rapidamente as mudanças realizadas.
  • Trabalhe com Branches: Desenvolva novas funcionalidades em branches separadas para garantir que o código principal continue estável.
  • Revisões de Código: Ao trabalhar com outros desenvolvedores, realize revisões de código para garantir a qualidade do projeto.
  • Integração Contínua: Utilize GitHub Actions ou outras ferramentas de CI/CD para realizar testes e integração contínua, garantindo que o código esteja sempre funcionando.
Compartilhe
Comentários (3)
Ronaldo Monteiro
Ronaldo Monteiro - 31/10/2024 16:46
We just updated our [Docs Contribution Guide](https://www.codecademy.com/pages/contribute-docs)!


Aline Araújo
Aline Araújo - 31/10/2024 16:33

Obrigada, pelo conteúdo!

Marcos Vinícius
Marcos Vinícius - 31/10/2024 16:04

Muito bom!