2012-06-10 18 views
7

Tengo un repositorio git local en el que he trabajado bastante, con un número de confirmaciones que me gustaría conservar. Lamentablemente, aunque el código es razonablemente reutilizable, incluí algunos datos confidenciales (nombres de bases de datos/usuario/contraseñas) en una confirmación muy temprana. Me gustaría cambiar todo el historial para anonimizar los datos confidenciales, conservando la estructura de historial general. es posible? ¿Si es así, cómo?¿Anonimizar un repositorio git local?

Respuesta

6

creo que esto ayudará a:

+0

Sí. Reescribir la historia es la clave. Hice un repositorio de respaldo (por si acaso), y luego ejecuté 'git filter-branch --tree-filter 'sed -i' s/sensitive data/clean data/g * 'HEAD', y eso eliminó todo del conjunto Gracias por el puntero! – naught101

0

eliminarlos del repositorio, y luego confirme. Luego necesita aplastar todas las confirmaciones desde el momento en que se agregaron los archivos cuando se eliminaron. Puede ver una buena explicación sobre eso here que en resumen sugiere usar git rebase -i.

+0

Soy consciente de que puedo aplastar las confirmaciones, pero eso eliminará la historia de la que estaba hablando. – naught101

Cuestiones relacionadas