Commit parcial no Git
Sabe quando você está alterando um arquivo e chega em um ponto que gostaria de fazer o commit de apenas parte do arquivo? Então, o Git possui uma funcionalidade chamada Interactive Staging que pode te ajudar.
Usando o parâmetro -i o git irá executar o add no modelo interativo.
Usarei como exemplo o arquivo.txt. Nele eu removi uma linha e adicionei duas. E, eu farei commit apenas da remoção da linha, ignorando a adição das duas linhas.
Como resposta ele irá apresentar os comandos disponíveis:
Escolhendo o comando 5
O git irá te perguntar qual arquivo você quer adicionar, parcialmente, no stage.
Selecione o arquivo que você irá adicionar, no stage, informando o número do arquivo. No caso, só tenho um arquivo para adicionar.
Selecionado o arquivo o git mostra sua seleção
Neste ponto, precione a tecla Enter para o ser apresentado a primeira diferença do arquivo e decidir o que fazer com ela.
Se você observar ele está mostrando as duas alterações feitas:
- Remoção da linha 1
- Adição das linhas 2 e 3
Como você que adicionar, apenas, a remoção da linha 1, vamos pedir ao git que separe as duas alterações, opção: “s”.
Esta opção fará o git responder com a primeira modificação, isto é, a remoção da primeira linha:
Para adicionar essa modificação selecionamos a opção: “y”
Assim, o git adiciona a modificação e apresenta a próxima, no caso a adição das duas linhas:
A adição das duas linhas podem ser divididas, mas neste caso, não irei adicionar essa modificação. Para sair iremos usar a opção: “q”, para sair da adição interativa do arquivo.txt e depois usar o “q”, de novo, para sair da adição interativa.
Assim, o git adiciona a modificação e apresenta a próxima, no caso a adição das duas linhas:
Feito isso, se você não tiver adicionado todas as diferenças no stage, o git status irá informar que o arquivo arquivo.txt está no stage e está modificado.
Pronto!
Agora temos apenas parte do arquivo adicionado no stage, usando a adição interativa ao stage do git.
Fonte: