¡Ninguno de los tutoriales ayudará!
Todos hacen esa cosa en la que simplemente asumen que sé qué hacer ...
Actualmente, mi ventana de terminal comienza con ..
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# deleted: httpdocs/newsite/manifest/cache/0a432970ba6491fe65dad60b012e5c95_louloumay2011en-1-4dea3186b7f7b.jpg
# deleted: httpdocs/newsite/manifest/cache/0a61b5d7a9e97da78fe602e1ad41edb6_5-4dec7c3d57c80.jpg
# deleted: httpdocs/newsite/manifest/cache/0afb6a7716a85d0de46cdd03bb30f75f_fifa_panorama_full_page-01_thu-4dea3d1a0e0f5.jpg
# deleted: httpdocs/newsite/manifest/cache/0b3bc9be76a5d3e1e36af4b8dcf98658_free2-4df0e2e08761f.jpg
# deleted: httpdocs/newsite/manifest/cache/0b6342913b8e599fac76da452af98ec5_si-feb-2009-1-4dea3d1abcb61.jpg
# deleted: httpdocs/newsite/manifest/cache/0b9ddc587340f7744e03c4b2dafacf7f_lou-lou-winter-2009-cover-4dea3d1a9b1a0.jpg
# deleted: httpdocs/newsite/manifest/cache/0bf64ff8fc22720b3da20d0730fa6a04_chatelaine-dec-2009-4dea3d18daa30.jpg
# deleted: httpdocs/newsite/manifest/cache/0bf664e03eb0a2255b69b02aed85add0_summumfeb2011-2-4dea3188766aa.jpg
pero no hay forma de saber cómo hacer lo que dicen hacer aquí ..
http://learn.github.com/p/normal.html
Todo lo que dice es
Simplemente escribimos nuestro mensaje de confirmación y salimos del editor.
¡¿Qué significa eso?!
El hecho de que escriba la palabra simplemente no significa que sea simple ...
Cuando empiezo a escribir, hace cosas raras, dice "grabando" o "insertando" y hay alrededor de 300 archivos, ¿y quiere que reemplace cada línea con un mensaje?!?
Ayuda !
Usaría su práctica aplicación Mac para esto, pero si tiene más de 20 archivos, ¡se congela!
¿¿Que pasa con eso??
Respuestas:
Cuando se ejecuta
git commit
sin argumentos, se abrirá su editor predeterminado para permitirle escribir un mensaje de confirmación. Guardar el archivo y salir del editor hará la confirmación.Parece que su editor predeterminado es Vi o Vim. La razón por la que suceden "cosas raras" cuando escribes es que Vi no se inicia en el modo de inserción, i¡primero debes presionar en tu teclado! Si no lo desea, puede cambiarlo por algo más simple, por ejemplo:
Luego, cargará el editor Nano (¡asumiendo que está instalado!) Cuando confirme, que es mucho más intuitivo para los usuarios que no han usado un editor modal como Vi.
Ese texto que ves en tu pantalla es solo para recordarte lo que estás a punto de cometer. Las líneas están precedidas por lo
#
que significa que son comentarios, es decir, Git ignora esas líneas cuando guarda su mensaje de confirmación. No es necesario que escriba un mensaje por archivo, solo ingrese un texto en la parte superior del búfer del editor.Para omitir el editor, puede proporcionar un mensaje de confirmación como argumento, por ejemplo
fuente
git commit
comando.#
en esa línea.git add
añadido al índice.git commit
, puede ejecutargit commit -a -m "Your message for the commit"
Entonces no se ejecutará ningún editor.Parece que el único problema aquí es que el editor predeterminado que se inicia es
vi
ovim
, con el que no está familiarizado. (Como consejo rápido, para salir de ese editor sin guardar los cambios, golpeó Escun par de veces y luego escriba :, q, !y Enter.)Hay varias formas de configurar su editor predeterminado y no ha indicado qué sistema operativo está utilizando, por lo que es difícil recomendar uno en particular. Sugeriría usar:
... que establece una preferencia global de git para un editor en particular. Alternativamente, puede establecer la
$EDITOR
variable de entorno.fuente
vim
hoja de trucos es valiosa, especialmente para aquellos que provienen de esa comunidad "un ícono vale más que mil líneas de comando ;-)"en el editor estándar Vi en esta situación, debe
fuente
El comando para confirmar todos los archivos modificados:
-a
= todos los archivos editados-m
= la siguiente cadena es un comentario.Esto se confirmará con el repositorio de unidades / carpetas locales. Si desea enviar sus cambios a un servidor git / servidor alojado de forma remota, después del comando anterior, escriba:
La hoja de trucos de GitHub es bastante útil.
fuente
No conozco el entorno de su sistema, pero parece que ha escrito:
Y se ha iniciado su editor predeterminado. En el peor de los casos (para ti) podría haber sido vim :)
Si no sabe cómo salir de vim, use: q.
Si tiene más problemas, puede utilizar
fuente
Git usa "el índice" para preparar las confirmaciones. Puede agregar y eliminar cambios del índice antes de confirmar (en su pegado ya ha eliminado ~ 10 archivos con
git rm
). Cuando el índice parezca que lo desea, ejecutegit commit
.Por lo general, esto se activará
vim
. Para insertar textoi
,<esc>
vuelve al modo normal, pulsaZZ
para guardar y salir (ZQ
para salir sin guardar). voilà, ahí está tu compromisofuente
Esto sucede cuando no incluye un mensaje cuando intenta comprometerse usando:
Lanza un entorno de editor. Salga escribiendo
:q!
y presionando enter.Te llevará de regreso a la terminal sin comprometerte, así que asegúrate de intentarlo de nuevo, esta vez pasa un mensaje:
fuente
Parece que todas las ediciones ya forman parte del índice. Entonces, para confirmar solo usa el
commit
comandoAl mirar sus mensajes, mi instinto me dice que probablemente no desee que los
cache
archivos se incluyan en su depósito. Especialmente si es algo que se construye sobre la marcha al ejecutar su programa. Si es así, debe agregar la siguiente línea a su archivo .gitignorefuente
git --help
esto le dará todas las órdenes comocommit
,push
,pull
,clone
etc. Para obtener ayuda sobre un comando específico y lo que los interruptores son tipogit commit --help
,git push --help
esto debería funcionar en la línea de comandos de Linux y Mac. Si desea una buena aplicación de línea de comandos, recomendaría la misma que githubgit-scm
enlaza en esta página. help.github.com/mac-set-up-gitEnfrenté el mismo problema, lo resolví escribiendo y
:q!
luego presionéEnter
Y resolvió mi problema Después de eso, ejecute el siguiente comandogit commit -a -m "your comment here"
Esto debería resolver su problema.
fuente