Cuando probé git add -p someNewFile.txt
un nuevo archivo (un archivo sin seguimiento), git simplemente mostraría la salida No changes.
y se detendría. Tuve que decirle a git que tenía la intención de rastrear el nuevo archivo primero.
git add -N someNewFile.txt
git add -p
Sin embargo, dado que no se rastreó el archivo, se mostraría como un trozo gigante que no se podía dividir (¡porque es todo nuevo!). Entonces, necesitaba editar el trozo en trozos más pequeños. Si no está familiarizado con eso, consulte esta referencia para comenzar.
Actualización: información de edición de Hunk
Quería actualizar esto en caso de que desaparezca la referencia anterior. Debido a que el nuevo archivo no tiene seguimiento, git add -p
mostrará cada línea en el archivo como una nueva línea en un trozo. Luego te preguntará qué quieres hacer con ese trozo, dándote el siguiente mensaje:
Stage this hunk [y,n,q,a,d,/,e,?]?
Suponiendo que no desea confirmar todo el trozo (y, por lo tanto, todo el archivo; porque no estoy seguro de por qué querría usar git add -p
en ese caso), querrá especificar la opción e
para decirle a git que desea editar el trozo.
Una vez que le digas a git que quieres editar el trozo, debería colocarte en el editor de tu elección para que puedas hacer tus cambios. Todas las líneas deben tener el prefijo +
ay git tiene algunos comentarios explicativos (con el prefijo a #
) al final del archivo. Simplemente elimine las líneas que no desee en su confirmación inicial del archivo. Luego guarde y salga del editor.
Explicación de Git de las opciones de hunk de git:
y - stage this hunk
n - do not stage this hunk
q - quit; do not stage this hunk or any of the remaining ones
a - stage this hunk and all later hunks in the file
d - do not stage this hunk or any of the later hunks in the file
g - select a hunk to go to
/ - search for a hunk matching the given regex
j - leave this hunk undecided, see next undecided hunk
J - leave this hunk undecided, see next hunk
k - leave this hunk undecided, see previous undecided hunk
K - leave this hunk undecided, see previous hunk
s - split the current hunk into smaller hunks
e - manually edit the current hunk
? - print help
git add -N
hace, simplemente agrega los archivos sin seguimiento especificados al índice, pero sin contenido.