Descubra como utilizar os comandos essenciais do Git, `git add` e `git commit`, para efetuar um controle eficiente de versão e colaboração em projetos de desenvolvimento de software. Vamos ver exemplos, sintaxe de uso e melhores práticas para otimizar seu fluxo de trabalho com Git.

O que é o git add?

O `git add` é utilizado para adicionar as mudanças feitas nos arquivos de um projeto para a staging area do Git. Em outras palavras, ele prepara e seleciona arquivos modificados para serem commitados no repositório.

  • O `git add` prepara e seleciona arquivos modificados para serem commitados no repositório.
  • Ele não commita as mudanças, apenas adiciona os arquivos alterados na staging area.
  • Arquivos novos, que ainda não estão sendo trackeados pelo Git, precisam ser adicionados com `git add` antes de poderem ser commitados.
  • Mudanças nos arquivos já sendo trackeados pelo Git também precisam passar pela staging area antes de serem commitadas.

Como usar o git add

A sintaxe básica do `git add` é: “` git add <arquivo ou diretório> “` Onde `<arquivo ou diretório>` especifica um ou mais arquivos/diretórios, caminhos relativos ou absolutos, que serão adicionados na staging area.

  • A sintaxe básica do `git add` e exemplos de uso.
  • Como adicionar um único arquivo, vários arquivos, todos os arquivos de uma pasta e todos os arquivos modificados.
  • A possibilidade de desfazer um `git add` antes do commit com o comando `git restore –staged <arquivo>`.

O que é git commit?

Depois de adicionar os arquivos na staging area com o `git add`, o próximo passo é commitar, usando o comando `git commit`.

  • O `git commit` cria um snapshot das mudanças adicionadas na staging area, registrando-as no repositório.
  • O commit é essencial para registrar as mudanças de forma permanente no histórico do repositório.

O que é o git commit?

O comando `git commit` é uma funcionalidade essencial do Git, responsável por salvar as alterações realizadas nos arquivos do projeto. Ao executar o git commit, as mudanças preparadas na staging area são registradas permanentemente no histórico do projeto.

  • Cada commit possui um hash SHA único que permite referenciá-lo posteriormente.
  • Os commits ficam registrados permanentemente no histórico do projeto e podem ser revisitados ou revertidos.
  • É recomendado que cada commit tenha um escopo pequeno e bem definido de mudanças, para facilitar o gerenciamento de versões.
  • Cada commit deve ser acompanhado de uma mensagem descritiva, contribuindo para o entendimento das modificações posteriormente.

Como usar o git commit

A sintaxe básica de um commit é: git commit -m “minha mensagem de commit”. É altamente recomendado que cada commit tenha uma mensagem associada, descrevendo de forma resumida e imperativa as mudanças feitas no commit.

  • Utilize linguagem imperativa no tempo presente, como ‘Adiciona’, ‘Remove’, ‘Modifica’.
  • A primeira linha da mensagem do commit deve ter no máximo 50 caracteres.
  • Evite mensagens genéricas, sendo o mais descritivo possível.
  • Mensagens claras ajudam a entender o histórico e propósito de cada modificação.

Fluxo de trabalho básico com git add e git commit

O fluxo básico de trabalho com Git envolve modificar arquivos localmente, selecionar arquivos/mudanças específicas com git add, commitar as mudanças com git commit -m “minha mensagem” e enviar commits locais para o repositório remoto.

  • Commits devem ser pequenos e com propósitos definidos, feitos com frequência.
  • Use mensagens descritivas nos commits para auxiliar a longo prazo.
  • Envie seus commits locais para o repositório remoto com git push para compartilhá-los.
  • Atualize seu repositório local com novos commits usando git pull.

Entendendo o funcionamento do Git com Visualizing Git

Para entender melhor visualmente o funcionamento e histórico de commits no Git, podemos usar o site Visualizing Git. Este site permite simular uma série de commits em um repositório Git fictício e ver o resultado no histórico de commits. É uma ótima ferramenta para entender na prática como commits são salvos, conectados e o fluxo de trabalho com Git.

  • O Visualizing Git é uma ferramenta que simula commits em um repositório Git fictício, permitindo visualizar o histórico de commits de forma prática.
  • É útil para compreender como os commits são salvos, conectados e o fluxo de trabalho com Git.
  • A simulação oferecida pelo Visualizing Git ajuda a compreender visualmente o funcionamento e o histórico de commits no Git.

Analisando o exemplo de commits

Vamos analisar o exemplo a seguir: Neste exemplo, temos o commit inicial do repositório, representado como uma “bolinha”, onde cada commit é como uma bolinha no histórico Git. A linha indica o branch principal (normalmente chamado de `master`). Conforme novos commits (bolinhas) são feitos, eles são adicionados nesta linha histórica no branch master.

  • O exemplo demonstra o commit inicial do repositório, representado visualmente como uma “bolinha”.
  • Cada commit é representado como uma bolinha no histórico Git, facilitando a visualização do fluxo de trabalho.
  • A linha indica o branch principal, geralmente chamado de `master`, e mostra como os commits são adicionados a esta linha histórica.

Observações sobre commits e seu impacto no histórico

Algumas observações importantes: Note que commits ficam registrados permanentemente no histórico, permitindo voltar a qualquer versão depois. Por isso, ter bons commits (pequenos e descritivos) e mensagens claras ajuda muito a gerenciar as versões. Commits relacionados são ligados sequencialmente, permitindo acessar e navegar no histórico facilmente depois. Branches, merges e outros conceitos mais avançados seguem a mesma lógica de registrar commits em sequência.

  • Commits são registrados permanentemente no histórico, possibilitando o retorno a qualquer versão anterior.
  • A importância de criar commits pequenos e descritivos, com mensagens claras, para facilitar o gerenciamento das versões.
  • Os commits relacionados são ligados sequencialmente, facilitando o acesso e navegação no histórico.
  • Branches, merges e outros conceitos avançados seguem a mesma lógica de registrar commits em sequência.

Aprenda mais sobre Git!

Para complementar seus estudos, recomendo o curso de Versionamento de Código Github da DNC, onde disponibilizamos 3 aulas 100% gratuitas pra você aproveitar e dar o primeiro passo na área.

Crie uma conta para obter acesso ao curso e dê o primeiro passo para se tornar expert em Tecnologia.

Conclusão

Dominar esses comandos é essencial para um versionamento eficiente. Alguns próximos passos recomendados: Praticar `git add` e `git commit` em projetos pessoais para ganhar experiência. Aprender `git push`, `git pull` e `git fetch` para interagir com repositórios remotos. Estudar branches, merges e resolução de conflitos para workflows mais avançados.

  • A prática de `git add` e `git commit` em projetos pessoais é recomendada para ganhar experiência.
  • É importante aprender a interagir com repositórios remotos, utilizando comandos como `git push`, `git pull` e `git fetch`.
  • Estudar branches, merges e resolução de conflitos é essencial para workflows mais avançados.