Necesito usar la extensión de palabra clave hg para incrustar la fecha de compilación y la revisión en un archivo fuente. Dejando de lado todo el argumento de "realmente no quieres estar haciendo eso", ¿cómo puedo hacer esto?Extensión Mercurial de palabras clave para expandir en cada confirmación
Esto es lo que mi archivo fuente (lib/foo/version.rb
) parece (que pasa a ser Ruby, pero eso solo es relevante desde el punto de vista que no tengo un paso de "compilación" en mi compilación que podría hacer DREVISION = "$ (ID HG)" in):
module Foo
VERSION = {
:date => "$Date$",
:changeset => "$Revision$"
}
end
el problema es que $ Revision $ y $ fecha $ se expanden con el conjunto de cambios y la fecha de ese archivo se comprometen, mientras que lo que necesito es el tip changeset y commit date de todo el repositorio.
No veo una plantilla obvia que pueda usar en hg help templates
, ni la extensión de palabra clave menciona nada con alcance global. ¿Es lo que estoy tratando de hacer posible?
entiendo que quiere dejar a un lado el "no querer hacerlo" parte, pero para cualquier otra persona que lee esto: la página de la extensión de palabras clave hace un gran trabajo de explicar por qué esta es probablemente una mala idea. En resumen: con un DVCS, todos los archivos en el proceso de compra son de la misma revisión, por lo que simplemente verificar el resultado de 'hg parents' o el contenido de' .hg_archive.txt' es casi siempre un mejor plan. Teniendo todos sus archivos modificados todo el tiempo, los tornillos con 'hg status' y el uso de DVCS en general. –