Git y agregar problemas de p

Acabo de aplicar un patch a 3 files, su diff se puede ver aquí:

stack.h , stack.c y main.c

La tarea es separar el patch en varios commit , como comentarios, licencia, refactorización, etc.

Para eso voy a usar git add -p :

  1. Primer trozo es licencia de main.c , trivial, main.c y .

  2. El segundo trozo está en stack.c y contiene un pedazo de licencia seguido de dos trozos de comentarios. Yo soy plit y luego y n n

  3. Seguiré haciendo esto por el rest de git add -p .

SIN EMBARGO, parece que ninguna de las n aplica!

Para confirmar mis sospechas, haré un nuevo git add -p otra vez, esta vez usaré e y esto se convertirá en esto .

git produce resultados fatal: corrupt patch at line 50 . Así que, básicamente, mi y yo tratamos de no poner en escena a ciertos types, pero terminamos descartando esas eliminaciones.

+ líneas deben eliminarse sin problemas a diferencia de - (donde tienes que replace esa línea por espacio), ¿verdad? ¿Qué estoy haciendo mal?

Parece que no siguió git add -p + git commit en cada paso. Decir "no" con n significa que los cambios restantes no se han llevado a cabo. Necesita repetir git add -p seguido de la git commit para cada tipo de cambio que desee que aparezca en cada confirmación.

SIN EMBARGO, parece que ninguna de las n aplica!

Esto es por layout. Significa que no querías eso en el índice. Entonces los cambios no fueron escenificados. Cuando te comprometes, no serán parte de ese compromiso. Debes repetir el process para get / those / in como en la iteración anterior.

Has terminado con git add -p + git commit iterations una vez que no hay más cambios pendientes de commit.

De nuevo, los tíos a los que dices "no" con n NO serán parte de la confirmación que git commit con git commit .

Puede ser que necesite leer sobre cómo funciona la etapa (o índice) de git.