Pregunta

He hecho un montón de cambios en mi versión de Git local de un proyecto de Rails que no quiero perder, sin embargo, al hacerlo, creé accidentalmente una carpeta vendedor / strong> en git.

Me di cuenta tan pronto como cometí que hice esto y hice un GIT RM para la carpeta (y agregó la carpeta a Gitignore), y se comprometió nuevamente.Sin embargo, ahora no puedo empujar el original porque el paquete es demasiado grande.

Lo que necesito

  • ¿Cómo puedo mantener las ediciones (y los archivos nuevos) que hice?
  • mientras se elimina la carpeta del paquete de la historia del git
  • y no empujando eso comprometerse con ellos ya que el directorio es demasiado grande

He estado buscando para varias formas de restablecimiento suave aquí, pero estoy atrapado ...

¿Fue útil?

Solución

Podría hacer git reset --soft HEAD~x donde X es el número de revisión que desea reiniciar: 2 en su caso y luego agregue el directorio al archivo GITIGNORE y también elimínelo del área estadificada.

Otros consejos

Creo que encontré la respuesta:

Esto ocurre bastante comúnmente.Alguien compromete accidentalmente un enorme Archivo binario con un git sin pensar., Y quieres eliminarlo. En todas partes.Tal vez usted haya comprendido accidentalmente un archivo que contenía un Contraseña, y desea que su proyecto de código abierto.rama de filtro Es la herramienta que probablemente desee usar para fregar toda la historia.A Eliminar un archivo llamado contraseña.txt de todo su historial, puede Use la opción - Filtro de filtro para filtrar-rama:

fuente :

git filter-branch --tree-filter 'rm -f /vendor/bundle' HEAD

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top