8

Iam usando win xp con Tortoisehg 2.3. Uso bit bucket para hacer una copia de seguridad de mi código fuente personal. (raramente para el control de la versión verdadera, más como una tienda de copia de seguridad de origen). Ahora tengo que hacer clic derecho en mi repositorio, seleccionar confirmar, luego ingresar un mensaje de confirmación (elijo simplemente copiar el mismo mensaje que utilicé la última vez, hay un menú desplegable para hacer esto), luego presiono confirmar. Luego vuelvo a hacer clic con el botón derecho y selecciono sincronizar y pasar por esta opción para finalmente presionar. Podría usar el banco de trabajo y hacer algo similar. Quiero optimizar este proceso, así que decidí simplemente escribir un script de dos bat para confirmar y enviar. Cuando presiono Tortoisehg escupe el comando hg en la ventana y puedes verlo y cortar y pegar desde aquí. Para el compromiso no muestra lo que realmente está haciendo bajo el capó. Cuando utilicé TortoiseSVN hace mucho tiempo recuerdo que había un archivo de registro donde todos los comandos svn ejecutados se almacenaban para la depuración. Entonces comencé a buscar un archivo de registro de TortoiseHg.tortoisehg paso de confirmación de un paso: cómo y dónde está el archivo de registro

¿Alguien sabe:

1) ¿TortoiseHg tienen un archivo de registro en algún lugar donde almacena todos los comandos ejecutados mercuriales completo con todas las opciones de línea de comandos?

2) ¿Hay una mejor manera de hacer un empuje de compromiso de un paso (a través de Tortoisehg gui o bat o algún complemento/extensión, etc.)?

respecto

Respuesta

9

1) ¿TortoiseHg tienen un archivo de registro en algún lugar donde almacena todos los comandos ejecutados mercuriales completo con todas las opciones de línea de comandos?

TortoiseHg en realidad no está muy relacionado con TortoiseSVN - los dos proyectos casi no comparten código y están desarrollados por diferentes grupos. Así que no creo que haya un archivo de registro para TortoiseHg aunque TortoiseSVN tenga uno.

2) ¿Hay una manera mejor de hacer un empujón de compromiso de un paso (a través de Tortoisehg gui o bat o algún complemento/extensión, etc.)?

Puede configurar un enganche post-commit. Esto, unido al archivo .hg\hgrc para su repositorio (crear el archivo según sea necesario):

[hooks] 
post-commit = hg push 

De esa manera se corre hg push después de cada confirmación, incluso cuando el compromiso se hace desde TortoiseHg.

+0

thx Martin. ¿Hay alguna forma de codificar mi mensaje de confirmación en este archivo hgrc?En caso afirmativo, los pls dicen sintaxis para este problema. Ahora necesito hacer clic en el menú desplegable del mensaje cada vez y hacer clic en algún mensaje antes de hacer clic en commit – Gullu

+1

. Si también desea codificar el mensaje de confirmación (no es realmente recomendable, si no le importan los mensajes de confirmación, solo configure un proceso de copia de seguridad periódico en su lugar) luego puede usar 'hg commit -m" su mensaje "' desde la línea de comandos. Es decir, deje de usar la parte de GUI de TortoiseHg y ponga 'hg commit -m" auto commit "' y 'hg push' en un pequeño archivo' commit.bat'. –

+0

De acuerdo. El archivo Bat es el mejor, ya que puedo resumirlo en el escritorio y toda la magia puede suceder con un solo clic del mouse. Gracias por tu ayuda. – Gullu

21

De hecho, hay una opción en TortoiseHg para hacer esto:

  1. Desde su ventana Commit clic en el botón "Opciones" al lado del botón "Copiar mensaje" que ha estado usando.
  2. Aparece una ventana con algunas opciones; la tercera opción es "Empujar después de confirmar". Marque eso.
  3. Enter "por defecto" en la casilla junto a la opción
  4. Haga clic en "Guardar en Repo", por lo que se guarda para la próxima vez

Ahora va a empujar al objetivo de comando predeterminado cada vez que confirma de TortoiseHg. Una cosa a tener en cuenta es que esto no dará como resultado un empuje automático si se compromete desde la línea de comando, mientras que la solución de Martin sí lo hará.

+0

gracias Steve, +1 por este genial truco, pero seleccionando los ans de Martin ya que como dijiste también funciona desde la línea de comando. Ahora lo único que falta es si de alguna manera en alguna parte de TortoiseHG podría codificar mi mensaje de compromiso. Ahora necesito hacer clic en el menú desplegable del mensaje de copia cada vez y hacer clic en algún mensaje antes de hacer clic en confirmar. De cualquier manera esto se puede hacer? – Gullu

Cuestiones relacionadas