Eliminar el post de confirmación anterior

Aquí en el trabajo, algunos compañeros de trabajo están usando Tower para interactuar con Git. Tower crea automáticamente posts de confirmación al fusionarse y también al aplastar commits. Debido a eso, ahora tenemos un par de posts de confirmación de hace unos días, que tienen más de 100 MB de tamaño. Esto ha estado causando algunos problemas reales con mi IDE usando cerca de 4GB de RAM y haciéndolo inoperable a veces.

Mi pregunta es, ¿cómo puedo cambiar solo los posts de confirmación de esos 2 commits? He intentado git rebase -i <hash#> y cuando se abre la database interactiva, puse la palabra key en uno de los commits y :wq . El problema es que parece que tendré que pasar por más de 100 compromisos y resolver conflictos para que vuelva a basarse. Sé que debo estar haciendo algo mal.

¿Alguien tiene alguna idea de cómo hacer esto sin arruinar mi twig actual y también sin tener que resolver conflictos de fusión para una tonelada de compromisos previos?

Parece que no estás usando rebase correctamente: git rebase -i <hash#> reproducirá tu twig actual encima de <hash#> , lo cual no parece ser lo que intentas hacer.

Suponiendo que el post de confirmación en cuestión se encuentra en una twig de característica (que no sea el master ), es probable que desee hacer algo como esto:

 git checkout my-branch git rebase -i $(git merge-base master HEAD) # Use reword as you did previously 

Esto realizará una rebase in situ, lo que te permite ajustar las confirmaciones en my-branch que no están también en el master .

Reescribiendo el post de confirmación más reciente

Puede cambiar el post de confirmación más reciente utilizando el command git commit --amend .

Commit no se ha insertado en línea

Si la confirmación solo existe en su repository local y no se ha enviado a GitHub, puede modificar el post de confirmación con el command git commit --amend .

  1. En la command-line, navegue hasta el repository que contiene la confirmación que desea modificar.
  2. Escriba git commit --amend y presione Enter .
  3. En su editor de text, edite el post de confirmación y guarde la confirmación.

El nuevo compromiso y el post aparecerán en GitHub la próxima vez que presione.

más leído en este artículo publicado en Github aquí .

Hope ayudó 🙂