VAZEI MEUS DADOS!! E AGORA?!? Veja como remover dados confidenciais commitados.
Fiz a besteira, e subi arquivos com chaves e informações confidênciais, e agora?
Graças ao sensacional curso.dev aprendi o que fazer! Para quem quiser saber como eu fiz para apagar os traços dos commits (do inicial, e do diff do commit de "correção"): Usei o BFG Repo-Cleaner para corrigir meu repositório que havia dados sensíveis em dois arquivos: .env e cred.json
1 - Baixei o arquivo .jar do BFG Repo-Cleaner do repositório e coloquei na mesma pasta que clonarei o projeto.
2 - Clonei meu repositório com o --mirror:
git clone --mirror git://example.com/repo_problematico.git
3 - Apaguei os arquivos com os comandos:
java -jar bfg-1.14.0.jar --delete-files cred.json repo_problematico.git
e
java -jar bfg-1.14.0.jar --delete-files .env repo_problematico.git
4 - entrar na pasta do repositório problemático:
cd repo_problematico.git
5 - Rodar os comandos conforme a documentação do BFG:
git reflog expire --expire=now --all && git gc --prune=now --aggressive
6 - git push
PRONTO!! Agora só trocar as chaves para dormir tranquilo e tudo está salvo E ninguém vai saber da canelada... (a não ser que eu vá no TabNews contar para o mundo todo...)
Cara, existe uma forma muito mais fácil de fazer isso - git filter-repo. Dá uma olhada aqui: https://github.com/newren/git-filter-repo
Vim do curso.dev, meio atrasado para engajar, mas nunca é tarde para parabenizar um bom conteúdo! Parabéns👌🏻😎
Achei isso no momento certo kkkkk, tava precisando
Vim do curso.dev para parabenizar pelo conteúdo! 😁😁👍
essas coisas acontecem kkkkk parabéns por resolver
interessante, mas notei falta de explicação sobre o processo que essa ferramenta faz para efetivamente limpar seu git.
quando leio um artigo busco coisas mais conceituais, a prática ajuda a consolidar e testar o que foi exposto.
mas será que devo usar esta estratégia sempre? quais os riscos da utilização indevida? porque isso funciona? quais as boas praticas que ele resolve?
Cara, parabéns... esse problema não deveria, mas acontece e ter um meios de corrigir essa vulnerabilidade é essencial. obrigado por compartilhar!!!
Pergunta de leigo: mas num é só voltar o commit até o ponto antes de commitar os dados e dar tipo um rebase?
Importante: Sinto até calafrios depois de ler e entender os efeitos colaterais de reescrever o histórico. Imaginar isso em um cenário de um projeto grande e consolidado é assustador.