mercurial mercurial-hook

mercurial: incluido el archivo modificado previamente



mercurial-hook (1)

Esto te parecerá loco, pero puedes hacerlo en dos pasos. Primero cambie su gancho precommit a un gancho pre-commit - yup, ambos existen y son diferentes. Sin el tablero, la confirmación ya ha comenzado y se ha adquirido un bloqueo. Con el tablero, sucede antes de que comience la confirmación y aún puedes hg add el nuevo archivo.

En un Unix como ese cambio total sería:

[hooks] pre-commit.exportDB=exportDB.sh && hg add resulting.sql

presumiblemente hay algo similar en Windows, o puede hacer que el hg add la última línea del archivo por lotes.

PD. No confíe los archivos generados. :)

Actualizar:

Acabo de probar esto y funciona como sugerí:

ry4an@four:~$ hg init reinhard ry4an@four:~$ cd reinhard/ ry4an@four:~/reinhard$ vi .hg/hgrc ry4an@four:~/reinhard$ cat .hg/hgrc [hooks] pre-commit = hg add otherfile ry4an@four:~/reinhard$ echo text > afile ry4an@four:~/reinhard$ echo more > otherfile ry4an@four:~/reinhard$ hg add afile ry4an@four:~/reinhard$ hg status A afile ? otherfile ry4an@four:~/reinhard$ hg commit -m ''message'' ry4an@four:~/reinhard$ hg status --all C afile C otherfile

Tenga en cuenta que antes de la confirmación solo se agrega ''afile'' y ''otherfile'' se desconoce, y después del commit ambos archivos son ''C'' (que significa "Limpiar ''- se han agregado y confirmado).

En commit to repository tengo un gancho definido en Mercurial:

[hooks] precommit.exportDB=exportDB.bat

Esto crea / actualiza un volcado de SQL de mi base de datos, que debe incluirse en la confirmación. PERO: aunque esto funciona, el Sql se marca como nuevo, pero no como parte del conjunto de cambios que ahora se compromete. ¿Cómo puedo incluirlo automáticamente para que entre al conjunto de archivos modificados?

Espero que esto tenga sentido ...

Thx Reinhard