O Git é uma excelente ferramenta para controle de versões de arquivos. Dentro dele é possível desenvolver vários projetos em que pessoas diferentes possam contribuir de forma simultânea, modificando e acrescentando novos arquivos, sem o risco de terem suas alterações apagadas ou sobrescritas.
Para que isto aconteça de uma forma estruturada, cada arquivo tem um controle de status. Na figura abaixo, retirada do próprio site do Git, temos a visão completa deles. Se você já copiou ou iniciou o projeto o Git, agora pode fazer mudanças nos arquivos e enviar essas alterações para o repositório. É importante lembrar que os arquivos podem ter o status de traked ou untracked. Arquivos marcados como tracked são aqueles já dentro do repositório. Eles podem ser unmodified (que ainda não foram alterados), modified (que já sofreram alteração) ou staged (os que acabaram de ser alterados).
Depois de sua alteração feita, é necessário fazer o commit da mesma para o projeto, ou seja, insere a mesma no histórico do projeto, para que fique disponível para outros integrantes da equipe. Ao fazer isto você insere uma descrição do que foi feito na alteração, para que ela não fique perdida e todos saibam que ela existe. Em resumo, isto seria o commit.
Algumas vezes você fez um commit de forma errada e precisa desfazer isto. Existem diversas formas, dependendo do que você exatamente quer mexer. Vamos apresentar algumas delas:
Talvez você tenha se esquecido de declarar algo na mensagem do commit e quer somente fazer uma pequena alteração. Para isto, você pode utilizar executar novamente o commit, acrescentando –amend:
$ git commit --amend
Isto faz com que sua área de seleção seja utilizada no commit. Se você não fez nenhuma alteração, sua seleção será a mesma e você vai alterar somente a mensagem do commit que foi aberto no editor. Isto sobrescreverá o último commit, alterando somente a mensagem.
Agora, se você quiser adicionar um novo arquivo, o código abaixo pode ser utilizado:
$ git commit -m 'commit original' $ git add arquivo que você esqueceu $ git commit --amend
Isso vai sobrescrever o commit anterior pelo seu novo, com as alterações.
Os exemplos anteriores mostravam casos específicos. Vamos agora mostrar uma solução mais completa.
$ git commit -m "algo que deu muito errado" $ git reset HEAD~ << edite os arquivos necessários >> $ git add ... $ git commit -c ORIG_HEAD
A primeira linha é o que você quer desfazer. A segunda linha desfaz o commit, fazendo com que suas mudanças voltem ao status modified (vão aparecer como “Changes not staged for commit” no comando git status, e você vai precisar adicioná-los novamente antes de fazer outro commit).
A terceira linha representa as alterações que você vai fazer. A quarta linha representaria possíveis adições que você deseje. Na última linha, você faz o commit das alterações, reutilizando a mensagem do commit antiga. O reset copiou o cabeçalho antigo para .git/ORIG_HEAD; o comando commit mais o -c ORIG_HEAD vai abrir o editor que continha a mensagem do commit original, permitindo sua edição.
Use a área de comentários abaixo para compartilhar outras dicas ou dúvidas sobre este assunto! Caso deseje navegar mais em outros assuntos, você, pode conferir nossa galeria de vídeos sobre Git. Abaixo está um exemplo:
Outra maneira interessante de descobrir mais coisas interessantes sobre Git é acessar nossa página de projetos
In 2024 we're witnessing a critical point in democratic technology: the integration of blockchain and…
We’re thrilled to announce an exciting opportunity for you to win not one but two…
Acquiring practical skills is crucial for career advancement and personal growth. Education Ecosystem stands out…
Artificial Intelligence (AI) has been making significant strides in various industries, and the software development…
Another week to bring you the top yield platforms for three of the most prominent…
If you hold a large volume of LEDU tokens above 1 million units and wish…