Tive de adicionar dados confidenciais (detalhes de conexão de banco de dados, chaves de API, etc.) a arquivos que não podem ser adicionados a .gitignore muitas vezes. Eu faço isso confirmando o arquivo com marcadores de posição variáveis …
$secret = 'XXXXXXXXXX';
… em seguida, use o seguinte comando para ignorar minhas alterações futuras:
git update-index --assume-unchanged /path/to/file
Se eu precisar fazer uma alteração neste arquivo no futuro, posso remover minhas credenciais, usar marcadores como acima e emitir o seguinte comando para que as alterações sejam rastreadas novamente:
git update-index --no-assume-unchanged /path/to/file