Eliminar archivos confidenciales y sus confirmaciones del historial de Git

Me gustaría poner un proyecto Git en GitHub pero contiene ciertos archivos con datos confidenciales (nombres de usuario y contraseñas, como /config/deploy.rb para capistrano).

Sé que puedo agregar estos nombres de archivo a .gitignore, pero esto no eliminaría su historial dentro de Git.

Tampoco quiero comenzar de nuevo eliminando el directorio /.git.

¿Hay alguna forma de eliminartodo trazas de un archivo en particular en su historial de Git?

Respuestas a la pregunta(22)

Su respuesta a la pregunta