¿Cómo eliminar los files de object de git pasado commit a github.com?

Casi me doy count de que esta pregunta probablemente ya esté hecha, pero no estoy familiarizado con la jerga y necesito una respuesta realmente fácil de seguir, quizás demasiado específica para mis necesidades particulares.

Olvidé eliminar los files del object y luego git add -A un git add -A . Luego escaneé algunas páginas man y usé algún tipo de modo interactivo y después de algunos bashs los files del object fueron eliminados.

Luego git push origin master un git push origin master para 'cargar' los files al server remoto en github.com. Se convirtió en tres commits.

Así que mis últimos cuatro compromisos consisten en:

  • 0) Un compromiso pasado que está bien y elegante.
  • 1) Una confirmación con los files object más los cambios de código
  • 2) Una confirmación donde se eliminan los files object.
  • 3) Un commit donde se agregó un file .gitignore (que alguien me envió hace más de un mes).

Básicamente quiero que haya una confirmación después de 0, cuya diferencia debería mostrar todos los cambios excepto cualquier evidencia de esos malditos files de objects. ¿Cómo hago esto, si es posible, por favor?

Localmente, use git rebase --interactive o su herramienta git de elección para get la historia como a usted le gusta. Luego use git push origin master -f para forzar su versión de master en el repository github.

Tenga en count que revisar la historia ya publicada significa que debe dirigirse a todos los que ya han retirado los cambios revisados ​​y darles instrucciones sobre cómo get los nuevos cambios, y volver a desglosar los anteriores si han hecho un trabajo sobre ellos.