Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Reversão do primeiro commit

No curso é mostrado que para eliminar uma alteração do controle de versões devemos fazer um git reset {COMMIT}, onde {COMMIT} é o ID do commit anterior ao que queremos eliminar.

Minha dúvida é: como elimino a primeira alteração de um arquivo?

No meu caso concreto, depois de fazer o primeiro commit de um projeto descobri que um dos arquivos fonte continha uma senha: se simplesmente comitar uma nova versão deste arquivo a senha permaneceria acessível no histórico. Minha intenção é fazer um "primeiro commit" deste arquivo já com um código lendo a senha de um arquivo de configuração (que não será versionado).

Já tentei remover o arquivo e depois readicioná-lo, mas ao fazer um git reset para o primeiro commit o arquivo com senha reaparece...

1 resposta
solução!

Olá, Fabiano.

Para esse caso, vale usar o projeto BFG Repo-Cleaner: https://rtyley.github.io/bfg-repo-cleaner/

É um projeto feito na linguagem Scala que facilita o uso do comando git-filter-branch.

Para remover o arquivo indesejado, faça:

bfg --delete-files arquivo-indesejado

Outra coisa que você pode fazer é trocar todas as senhas de um arquivo senhas.txt, por exemplo, por **REMOVED**:

bfg --replace-text senhas.txt