InglésFrancésEspañol

Ad


icono de página de OnWorks

hg - Online en la nube

Ejecute hg en el proveedor de alojamiento gratuito de OnWorks sobre Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando hg que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


hg - Sistema de gestión de código fuente Mercurial

SINOPSIS


hg comando [opción] ... [argumento] ...

DESCRIPCIÓN


El hg El comando proporciona una interfaz de línea de comandos para el sistema Mercurial.

COMANDO ELEMENTOS


archivos ...
indica uno o más nombres de archivo o nombres de archivo de ruta relativa; ver Patrones de nombre de archivo
para obtener información sobre la coincidencia de patrones

camino indica una ruta en la máquina local

revisión
indica un conjunto de cambios que se puede especificar como un número de revisión del conjunto de cambios, una etiqueta,
o una subcadena única del valor hash del conjunto de cambios

repositorio camino
ya sea el nombre de ruta de un repositorio local o el URI de un repositorio remoto.

CAMPUS


-R,--repositorio
directorio raíz del repositorio o nombre del archivo de paquete de superposición

--cwd
cambiar directorio de trabajo

-y, - no interactivo
no preguntar, elige automáticamente la primera opción para todas las indicaciones

-q, --tranquilo
suprimir la salida

-v, --verboso
habilitar salida adicional

--config
establecer / anular la opción de configuración (use 'section.name = value')

--depurar
habilitar la salida de depuración

--depurador
iniciar depurador

- codificación
establecer la codificación del juego de caracteres (predeterminado: UTF-8)

--modo de codificación
establecer el modo de codificación del juego de caracteres (predeterminado: estricto)

--rastrear
imprimir siempre un rastreo en caso de excepción

--tiempo tiempo cuánto tarda el comando

--perfil
imprimir perfil de ejecución de comandos

--versión
salida de información de la versión y salir

-h, --ayuda
mostrar ayuda y salir

--oculto
considerar conjuntos de cambios ocultos

[+] la opción marcada se puede especificar varias veces

COMANDOS


add
agregue los archivos especificados en la próxima confirmación:

hg agregar [OPCIÓN] ... [ARCHIVO] ...

Programe archivos para que sean controlados por versiones y agregados al repositorio.

Los archivos se agregarán al repositorio en la próxima confirmación. Para deshacer un añadido antes de eso,
ver hg olvidar.

Si no se dan nombres, agregue todos los archivos al repositorio (excepto los archivos que coincidan .hgignorar).

Ejemplos:

· Los archivos nuevos (desconocidos) se agregan automáticamente hg add:

$ls
foo.c
estado de $ hg
? foo.c
$ hg añadir
agregando foo.c
estado de $ hg
Un foo.c

· Se pueden especificar archivos específicos que se agregarán:

$ls
bar.c foo.c
estado de $ hg
? bar.c
? foo.c
$ hg agregar bar.c
estado de $ hg
Un bar.c
? foo.c

Devuelve 0 si todos los archivos se agregaron correctamente.

Opciones:

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-S, --subrepos
recurrir a subrepositorios

-norte, - corrida en seco
no realice acciones, solo imprima la salida

[+] la opción marcada se puede especificar varias veces

agregar eliminar
agregue todos los archivos nuevos, elimine todos los archivos que faltan:

hg addremove [OPCIÓN] ... [ARCHIVO] ...

Agregue todos los archivos nuevos y elimine todos los archivos que faltan del repositorio.

A menos que se den nombres, los archivos nuevos se ignoran si coinciden con alguno de los patrones en
.hgignorar. Al igual que con add, estos cambios entran en vigor en la próxima confirmación.

Utilice la opción de similitud -s / - para detectar archivos renombrados. Esta opción toma un porcentaje
entre 0 (deshabilitado) y 100 (los archivos deben ser idénticos) como parámetro. Con un parámetro
mayor que 0, esto compara cada archivo eliminado con cada archivo agregado y registra esos
lo suficientemente similar como los cambios de nombre. Detectar archivos renombrados de esta manera puede resultar costoso. Después de usar
esta opción, hg estado -C se puede utilizar para comprobar qué archivos se identificaron como movidos o
renombrado. Si no se especifica, -s / - similitud por defecto es 100 y solo cambia el nombre de idénticos
se detectan archivos.

Ejemplos:

· Varios archivos (bar.cy foo.c) son nuevos, mientras que foobar.c se ha eliminado (sin
usando hg remove) del repositorio:

$ls
bar.c foo.c
estado de $ hg
! foobar.c
? bar.c
? foo.c
$ hg agregar
agregando bar.c
agregando foo.c
eliminar foobar.c
estado de $ hg
Un bar.c
Un foo.c
R foobar.c

· Se movió un archivo foobar.c a foo.c sin usar hg rebautizar. Luego, fue
editado ligeramente:

$ls
foo.c
estado de $ hg
! foobar.c
? foo.c
$ hg addremove - similitud 90
eliminar foobar.c
agregando foo.c
eliminación de grabación de foobar.c como cambio de nombre a foo.c (94% similar)
$ hg estado -C
Un foo.c
foobar.c
R foobar.c

Devuelve 0 si todos los archivos se agregaron correctamente.

Opciones:

-s,--semejanza
adivinar archivos renombrados por similitud (0 <= s <= 100)

-S, --subrepos
recurrir a subrepositorios

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-norte, - corrida en seco
no realice acciones, solo imprima la salida

[+] la opción marcada se puede especificar varias veces

anotar
muestra la información del conjunto de cambios por línea para cada archivo:

hg anotar [-r REV] [-f] [-a] [-u] [-d] [-n] [-c] [-l] ARCHIVO ...

Enumere los cambios en los archivos, mostrando el ID de revisión responsable de cada línea.

Este comando es útil para descubrir cuándo se realizó un cambio y quién lo hizo.

Si incluye --file, --user o --date, el número de revisión se suprime a menos que
también incluya --number.

Sin la opción de texto -a / -, anotar evitará procesar archivos que detecta como binarios.
Con -a, anotar anotará el archivo de todos modos, aunque los resultados probablemente serán
ni útil ni deseable.

Devuelve 0 en caso de éxito.

Opciones:

-r,--Rvdo
anotar la revisión especificada

--seguir
siga las copias / cambios de nombre y enumere el nombre del archivo (DESAPARECIDO)

--no seguir
no sigas copias y cambios de nombre

-a --texto
tratar todos los archivos como texto

-tu, --usuario
enumerar el autor (largo con -v)

-F, --expediente
lista el nombre del archivo

-D, --fecha
enumerar la fecha (abreviada con -q)

-norte, --número
enumerar el número de revisión (predeterminado)

-C, --cambio de conjunto
enumerar el conjunto de cambios

-yo, --número de línea
mostrar el número de línea en la primera aparición

-w, - ignorar-todo-espacio
ignorar el espacio en blanco al comparar líneas

-B, --ignorar-cambio-de-espacio
ignorar los cambios en la cantidad de espacio en blanco

-B, --ignorar-líneas-en-blanco
ignorar los cambios cuyas líneas están todas en blanco

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-T,--plantilla
mostrar con plantilla (EXPERIMENTAL)

[+] la opción marcada se puede especificar varias veces

alias: culpa

Archivo
crear un archivo sin versionar de una revisión del repositorio:

archivo hg [OPCIÓN] ... DEST

De forma predeterminada, la revisión utilizada es la principal del directorio de trabajo; use -r / - rev para
especificar una revisión diferente.

El tipo de archivo se detecta automáticamente en función de la extensión del archivo (para anular, utilice
-t / - tipo).

Ejemplos:

· Crear un archivo zip que contenga la versión 1.0:

hg archive -r 1.0 proyecto-1.0.zip

· Crear un tarball excluyendo archivos .hg:

proyecto de archivo hg.tar.gz -X ".hg *"

Los tipos válidos son:

archivos

un directorio lleno de archivos (predeterminado)

alquitrán

archivo tar, sin comprimir

tbz2

archivo tar, comprimido usando bzip2

tgz

archivo tar, comprimido usando gzip

uzip

archivo zip, sin comprimir

Código Postal

archivo zip, comprimido usando deflate

El nombre exacto del archivo o directorio de destino se proporciona mediante una cadena de formato; ver
hg ayuda exportar para obtener más detalles.

Cada miembro agregado a un archivo de almacenamiento tiene un prefijo de directorio antepuesto. Utilice -p / - prefijo para
especifique una cadena de formato para el prefijo. El predeterminado es el nombre base del archivo, con
sufijos eliminados.

Devuelve 0 en caso de éxito.

Opciones:

--no-decodificar
no pase archivos a través de decodificadores

-pag,--prefijo
prefijo de directorio para archivos en archivo

-r,--Rvdo
revisión para distribuir

-t,--escribe
tipo de distribución a crear

-S, --subrepos
recurrir a subrepositorios

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

retirarse
efecto inverso del conjunto de cambios anterior:

hg backout [OPCIÓN] ... [-r] REV

Prepare un nuevo conjunto de cambios con el efecto de REV deshecho en el directorio de trabajo actual. Si
no se encontraron conflictos, se cometerá de inmediato.

Si REV es el padre del directorio de trabajo, entonces este nuevo conjunto de cambios se confirma
automáticamente (a menos que se especifique --no-commit).

Note hg retirarse no se puede utilizar para corregir una combinación incorrecta o no deseada.

Ejemplos:

· Revertir el efecto del padre del directorio de trabajo. Esta retirada será
cometido inmediatamente:

hg backout -r.

· Revertir el efecto de la mala revisión anterior 23:

hg retroceso -r 23

· Revertir el efecto de la mala revisión anterior 23 y dejar los cambios sin confirmar:

hg backout -r 23 --sin compromiso
hg commit -m "Revisión de retroceso 23"

De forma predeterminada, el conjunto de cambios pendiente tendrá un padre, manteniendo un historial lineal. Con
--merge, el conjunto de cambios pendiente tendrá dos padres: el padre anterior del
directorio de trabajo y un nuevo hijo de REV que simplemente deshace REV.

Antes de la versión 1.7, el comportamiento sin --merge era equivalente a especificar --merge
seguido por hg actualización --limpio . para cancelar la fusión y dejar al hijo de REV como jefe
para fusionarse por separado.

See hg ayuda fechas para obtener una lista de formatos válidos para la fecha -d / -.

See hg ayuda revertir para encontrar una forma de restaurar archivos al estado de otra revisión.

Devuelve 0 en caso de éxito, 1 si no hay nada que cancelar o si hay archivos sin resolver.

Opciones:

--unir
fusionarse con el antiguo padre dirstate después de la cancelación

--cometer
Comprometerse si no se encontraron conflictos (DEPRECATED)

--no comprometerse
no te comprometas

--padre
padre para elegir cuando se retira de la fusión (DEPRECATED)

-r,--Rvdo
revisión para retirar

-mi, --editar
invocar editor en mensajes de confirmación

-t,--herramienta
especificar herramienta de combinación

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-metro,--mensaje
usar texto como mensaje de confirmación

-yo,--archivo de registro
leer el mensaje de confirmación del archivo

-D,--fecha
registrar la fecha especificada como fecha de compromiso

-tu,--usuario
registrar al usuario especificado como confirmador

[+] la opción marcada se puede especificar varias veces

bisecar
búsqueda de subdivisión de conjuntos de cambios:

hg bisecta [-gbsr] [-U] [-c CMD] [REV]

Este comando ayuda a encontrar conjuntos de cambios que presentan problemas. Para usar, marque el primero
conjunto de cambios que sabe que presenta el problema como malo, luego marque el conjunto de cambios más reciente que sea
libre del problema como bueno. Bisect actualizará su directorio de trabajo a una revisión para
testing (a menos que se especifique la opción -U / - noupdate). Una vez que haya realizado las pruebas,
marcar el directorio de trabajo como bueno o malo, y bisect se actualizará a otro
candidato changeset o anunciar que ha encontrado la revisión incorrecta.

Como atajo, también puede usar el argumento de revisión para marcar una revisión como buena o mala
sin comprobarlo primero.

Si proporciona un comando, se utilizará para la bisección automática. El entorno
La variable HG_NODE contendrá el ID del conjunto de cambios que se está probando. El estado de salida del
El comando se usará para marcar las revisiones como buenas o malas: el estado 0 significa bueno, 125 significa
omitir la revisión, 127 (comando no encontrado) abortará la bisección, y cualquier otra
un estado de salida distinto de cero significa que la revisión es incorrecta.

Algunos ejemplos:

· Iniciar una bisección con una mala revisión 34 conocida y una buena revisión 12:

hg bisect --malo 34
hg bisect - bueno 12

· Avanzar en la bisección actual marcando la revisión actual como buena o mala:

hg bisect - bueno
hg bisect --malo

· Marcar la revisión actual, o una revisión conocida, para ser omitida (por ejemplo, si esa revisión es
no se puede utilizar debido a otro problema):

hg bisecar --saltar
hg bisecar --saltar 23

· Omitir todas las revisiones que no toquen directorios foo or de caramelos:

hg bisect --skip "! (file ('path: foo') & file ('path: bar'))"

· Olvídate de la bisección actual:

bisect hg --reset

· Use 'make && make tests' para encontrar automáticamente la primera revisión rota:

bisect hg --reset
hg bisect --malo 34
hg bisect - bueno 12
hg bisect: comando "make && make tests"

· Ver todos los conjuntos de cambios cuyos estados ya se conocen en la bisección actual:

hg log -r "bisecar (podar)"

· Ver el conjunto de cambios que se está dividiendo actualmente (especialmente útil si se ejecuta con
-U / - noupdate):

hg log -r "bisecar (actual)"

· Ver todos los conjuntos de cambios que participaron en la bisección actual:

hg log -r "bisecar (rango)"

· Incluso puedes obtener un buen gráfico:

hg log --graph -r "bisecar (rango)"

See hg ayuda revoluciones para más sobre el bisecar() palabra clave.

Devuelve 0 en caso de éxito.

Opciones:

-r, --Reiniciar
restablecer el estado de bisección

-gramo, --bien
marcar el conjunto de cambios bueno

-B, --malo
marcar el conjunto de cambios como malo

-s, --saltar
omitir el conjunto de cambios de prueba

-mi, --ampliar
extender el rango de bisección

-C,--mando
use el comando para verificar el estado del conjunto de cambios

-Tú, --ninguna actualización
no actualizar al objetivo

marcadores
crear un nuevo marcador o enumerar los marcadores existentes:

hg marcadores [OPCIONES] ... [NOMBRE] ...

Los marcadores son etiquetas en conjuntos de cambios para ayudar a rastrear las líneas de desarrollo. Los marcadores son
sin versionar y se puede mover, renombrar y eliminar. Eliminar o mover un marcador no tiene
efecto sobre los conjuntos de cambios asociados.

La creación o actualización de un marcador hace que se marque como "activo". El activo
el marcador se indica con un '*'. Cuando se realiza una confirmación, el marcador activo avanzará
al nuevo compromiso. Una llanura hg actualización también avanzará un marcador activo, si es posible.
La actualización desde un marcador hará que se desactive.

Los marcadores se pueden insertar y extraer entre repositorios (consulte hg ayuda empuje y hg ayuda recogida
). Si un marcador compartido ha divergido, un nuevo 'marcador divergente' con el formato 'nombre @ ruta'
se creará. Utilizando hg unir resolverá la divergencia.

Un marcador llamado '@' tiene la propiedad especial que hg clonar lo comprobará por defecto
si existiera.

Ejemplos:

· Crear un marcador activo para una nueva línea de desarrollo:

nueva característica de hg book

· Crear un marcador inactivo como marcador de lugar:

hg book -i reseñado

· Crear un marcador inactivo en otro conjunto de cambios:

hg book -r. ^ probado

· Cambiar el nombre del pavo a la cena:

hg book -m pavo cena

· Mover el marcador '@' de otra rama:

libro de hg -f @

Opciones:

-F, --fuerza
forzar

-r,--Rvdo
revisión de la acción del marcador

-D, --Eliminar
eliminar un marcador determinado

-metro,--rebautizar
cambiar el nombre de un marcador determinado

-I, --inactivo
marcar un marcador como inactivo

-T,--plantilla
mostrar con plantilla (EXPERIMENTAL)

alias: marcador

biblioteca
establecer o mostrar el nombre de la rama actual:

sucursal hg [-fC] [NOMBRE]

Nota Los nombres de las sucursales son permanentes y globales. Usar hg marcador para crear un peso ligero
marcador en su lugar. Ver hg ayuda glosario para obtener más información sobre las ramas con nombre
y marcadores.

Sin argumento, muestra el nombre de la rama actual. Con un argumento, establezca el trabajo
nombre de la rama del directorio (la rama no existirá en el repositorio hasta la próxima confirmación).
La práctica estándar recomienda que el desarrollo primario se lleve a cabo en la rama "predeterminada".

A menos que se especifique -f / - force, la rama no le permitirá establecer un nombre de rama que ya
existe.

Use -C / - clean para restablecer la rama del directorio de trabajo a la del padre de la
directorio, negando un cambio de rama anterior.

Usa el comando hg actualización para cambiar a una sucursal existente. Usar hg hacer - cerca de la rama a
marque esta rama como cerrada. Cuando todas las cabezas de una rama están cerradas, la rama se
ser considerado cerrado.

Devuelve 0 en caso de éxito.

Opciones:

-F, --fuerza
establecer el nombre de la rama incluso si oculta una rama existente

-VS, --limpio
restablecer el nombre de la rama al nombre de la rama principal

sucursales
listar repositorio llamado ramas:

ramas de hg [-c]

Enumere las ramas con nombre del repositorio, indicando cuáles están inactivas. Si -c / - cerrado
se especifica, también enumere las ramas que se han marcado como cerradas (ver hg hacer
- cerca de la rama).

Usa el comando hg actualización para cambiar a una sucursal existente.

Devuelve 0.

Opciones:

-a --activo
mostrar solo las ramas que tienen cabezas no fusionadas (DEPRECATED)

-C, --cerrado
mostrar ramas normales y cerradas

-T,--plantilla
mostrar con plantilla (EXPERIMENTAL)

liar
crear un archivo de grupo de cambios:

hg bundle [-f] [-t TYPE] [-a] [-r REV] ... [--base REV] ... FILE [DEST]

Genere un archivo de grupo de cambios que recopile conjuntos de cambios que se agregarán a un repositorio.

Para crear un paquete que contenga todos los conjuntos de cambios, use -a / - all (o --base null). De lo contrario, hg
asume que el destino tendrá todos los nodos que especifique con --base parameters.
De lo contrario, hg asumirá que el repositorio tiene todos los nodos en destino, o
default-push / default si no se especifica ningún destino.

Puede cambiar el formato del paquete con la opción -t / - type. Puede especificar una compresión, una
versión de paquete o ambas usando un guión (versión de compilación). Los métodos de compresión disponibles son:
none, bzip2 y gzip (de forma predeterminada, los paquetes se comprimen mediante bzip2). El disponible
Los formatos son: v1, v2 (predeterminado al más adecuado).

A continuación, el archivo del paquete puede transferirse utilizando medios convencionales y aplicarse a otro
repositorio con el comando unbundle o pull. Esto es útil cuando el empuje y el tirón directo son
no disponible o cuando no se desea exportar un repositorio completo.

La aplicación de paquetes conserva todo el contenido del conjunto de cambios, incluidos los permisos, copiar / renombrar
información e historial de revisiones.

Devuelve 0 en caso de éxito, 1 si no se encuentran cambios.

Opciones:

-F, --fuerza
corre incluso cuando el destino no está relacionado

-r,--Rvdo
un conjunto de cambios destinado a agregarse al destino

-B,--rama
una rama específica que le gustaría agrupar

--base
un conjunto de cambios base que se supone que está disponible en el destino

-a --todas
agrupar todos los conjuntos de cambios en el repositorio

-t,--escribe
tipo de compresión de paquete a utilizar (predeterminado: bzip2)

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

[+] la opción marcada se puede especificar varias veces

gato
generar la revisión actual o dada de archivos:

hg cat [OPCIÓN] ... ARCHIVO ...

Imprima los archivos especificados como estaban en la revisión dada. Si no se da ninguna revisión, el
padre del directorio de trabajo.

La salida puede ser a un archivo, en cuyo caso el nombre del archivo se da usando un formato
cuerda. Las reglas de formato son las siguientes:

%%

carácter literal "%"

%s

nombre base del archivo que se está imprimiendo

%d

dirname del archivo que se está imprimiendo, o '.' si está en la raíz del repositorio

%p

nombre de la ruta relativa a la raíz del archivo que se está imprimiendo

%H

hash de conjunto de cambios (40 dígitos hexadecimales)

%R

número de revisión del conjunto de cambios

%h

hash de conjunto de cambios de forma corta (12 dígitos hexadecimales)

%r

número de revisión del conjunto de cambios con relleno de ceros

%b

nombre base del repositorio de exportación

Devuelve 0 en caso de éxito.

Opciones:

-Oh,--producción
imprimir salida a archivo con nombre formateado

-r,--Rvdo
imprimir la revisión dada

--descodificar
aplicar cualquier filtro de decodificación coincidente

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

clonar
hacer una copia de un repositorio existente:

clon de hg [OPCIÓN] ... FUENTE [DEST]

Cree una copia de un repositorio existente en un directorio nuevo.

Si no se especifica un nombre de directorio de destino, el valor predeterminado es el nombre base de la fuente.

La ubicación de la fuente se agrega al nuevo repositorio .hg / hgrc archivo, como predeterminado
que se utilizará para futuros tirones.

Solo caminos locales y ssh: // Las URL se admiten como destinos. Para ssh: // destinos,
sin directorio de trabajo o .hg / hgrc se creará en el lado remoto.

Si el repositorio de origen tiene un marcador llamado '@' establecido, esa revisión será extraída
en el nuevo repositorio de forma predeterminada.

Para verificar una versión en particular, use -u / - update, o -U / - noupdate para crear un clon
sin directorio de trabajo.

Para extraer solo un subconjunto de conjuntos de cambios, especifique uno o más identificadores de revisiones con
-r / - rev o bifurca con -b / - bifurcación. El clon resultante contendrá solo el especificado
conjuntos de cambios y sus antepasados. Estas opciones (o 'clonar src # rev dest') implican --pull, incluso
para repositorios de fuentes locales.

Nota La especificación de una etiqueta incluirá el conjunto de cambios etiquetado pero no el conjunto de cambios que contiene
la etiqueta.

Para mayor eficiencia, los enlaces duros se utilizan para la clonación siempre que el origen y el destino estén activados.
el mismo sistema de archivos (tenga en cuenta que esto se aplica solo a los datos del repositorio, no a los
directorio). Algunos sistemas de archivos, como AFS, implementan la vinculación dura de forma incorrecta, pero no
reportar errores. En estos casos, use la opción --pull para evitar los vínculos duros.

En algunos casos, puede clonar repositorios y el directorio de trabajo utilizando enlaces físicos completos


$ cp -al REPO REPOCLON

Esta es la forma más rápida de clonar, pero no siempre es segura. La operación no es atómica
(asegurarse de que REPO no se modifique durante la operación depende de usted) y debe hacer
asegúrese de que su editor rompa los enlaces duros (Emacs y la mayoría de las herramientas del kernel de Linux lo hacen). Además, esto es
no es compatible con ciertas extensiones que colocan sus metadatos en el directorio .hg,
como mq.

Mercurial actualizará el directorio de trabajo a la primera revisión aplicable de este
lista:

una. nulo si -U o el repositorio de origen no tiene conjuntos de cambios

B. si tu . y el repositorio de origen es local, el primer padre del repositorio de origen
directorio de trabajo

C. el conjunto de cambios especificado con -u (si es un nombre de rama, esto significa el último encabezado de ese
rama)

D. el conjunto de cambios especificado con -r

mi. la cabeza más inclinada especificada con -b

F. el encabezado más alto especificado con la sintaxis de la fuente url # branch

gramo. la revisión marcada con el marcador '@', si está presente

h. la cabeza más inclinada de la rama predeterminada

I. propina

Al clonar desde servidores que lo admiten, Mercurial puede obtener datos generados previamente de un
URL anunciada por el servidor. Cuando se hace esto, los ganchos que operan en conjuntos de cambios entrantes y
los grupos de cambios pueden activarse dos veces, una para el paquete obtenido de la URL y otra para cualquier
no se han obtenido datos adicionales de esta URL. Además, si se produce un error, el repositorio
se puede revertir a un clon parcial. Este comportamiento puede cambiar en futuras versiones. Ver hg
ayuda -e paquetes de clones para más.

Ejemplos:

· Clonar un repositorio remoto en un nuevo directorio llamado hg /:

clon de hg http://selenic.com/hg

· Crear un clon local ligero:

proyecto de clonación de hg / proyecto-función /

· Clonar desde una ruta absoluta en un servidor ssh (tenga en cuenta la barra doble):

hg clone ssh: // usuario @ servidor // inicio / proyectos / alpha /

· Hacer un clon de alta velocidad a través de una LAN mientras verifica una versión específica:

clon de hg - sin comprimir http://server/repo -u 1.5

· Crear un repositorio sin conjuntos de cambios después de una revisión en particular:

clon de hg -r 04e544 experimental / bueno /

· Clonar (y rastrear) una rama con nombre particular:

clon de hg http://selenic.com/hg#estable

See hg ayuda urls para obtener detalles sobre cómo especificar URL.

Devuelve 0 en caso de éxito.

Opciones:

-Tú, --ninguna actualización
el clon incluirá un directorio de trabajo vacío (solo un repositorio)

-tu,--actualizarev
revisión, etiqueta o rama para verificar

-r,--Rvdo
incluir el conjunto de cambios especificado

-B,--rama
clonar solo la rama especificada

--jalar utilizar el protocolo de extracción para copiar metadatos

- sin comprimir
usar transferencia sin comprimir (rápido a través de LAN)

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

[+] la opción marcada se puede especificar varias veces

hacer
confirmar los archivos especificados o todos los cambios pendientes:

hg commit [OPCIÓN] ... [ARCHIVO] ...

Confirme los cambios en los archivos dados en el repositorio. A diferencia de un SCM centralizado, este
La operación es una operación local. Ver hg empuje para una forma de distribuir activamente sus cambios.

Si se omite una lista de archivos, todos los cambios informados por hg estado se comprometerá.

Si está confirmando el resultado de una fusión, no proporcione ningún nombre de archivo o -I / -X
filtros.

Si no se especifica ningún mensaje de confirmación, Mercurial inicia su editor configurado donde puede
ingrese un mensaje. En caso de que su confirmación falle, encontrará una copia de seguridad de su mensaje en
.hg / último-mensaje.txt.

La bandera --close-branch se puede usar para marcar la cabeza de la rama actual cerrada. Cuando todas las cabezas
de una sucursal están cerradas, la sucursal se considerará cerrada y dejará de cotizar.

El indicador --amend se puede utilizar para modificar el padre del directorio de trabajo con un nuevo
commit que contiene los cambios en el padre además de los reportados actualmente por
hg estado, si hay alguno. La confirmación anterior se almacena en un paquete de respaldo en
.hg / strip-backup (consulta: hg ayuda liar y hg ayuda desagregar sobre cómo restaurarlo).

El mensaje, el usuario y la fecha se toman de la confirmación modificada a menos que se especifique. Cuando un mensaje
no se especifica en la línea de comando, el editor se abrirá con el mensaje de la modificación
cometer.

No es posible modificar conjuntos de cambios públicos (ver hg ayuda fases) o conjuntos de cambios que tienen
niños.

See hg ayuda fechas para obtener una lista de formatos válidos para la fecha -d / -.

Devuelve 0 en caso de éxito, 1 si nada cambió.

Ejemplos:

· Confirmar todos los archivos que terminan en .py:

hg commit - incluye "set: **. py"

· Confirmar todos los archivos no binarios:

hg commit --exclude "conjunto: binario ()"

· Modificar el compromiso actual y establecer la fecha ahora:

hg commit --amend --fecha ahora

Opciones:

-UN, --agregar eliminar
marcar archivos nuevos / faltantes como agregados / eliminados antes de confirmar

- cerca de la rama
marcar una rama como cerrada

--enmendar
modificar el padre del directorio de trabajo

-s, --secreto
usa la fase secreta para comprometerte

-mi, --editar
invocar editor en mensajes de confirmación

-I, --interactivo
usar el modo interactivo

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-metro,--mensaje
usar texto como mensaje de confirmación

-yo,--archivo de registro
leer el mensaje de confirmación del archivo

-D,--fecha
registrar la fecha especificada como fecha de compromiso

-tu,--usuario
registrar al usuario especificado como confirmador

-S, --subrepos
recurrir a subrepositorios

[+] la opción marcada se puede especificar varias veces

alias: ci

config
muestre las configuraciones de configuración combinadas de todos los archivos hgrc:

hg config [-u] [NOMBRE] ...

Sin argumentos, imprima los nombres y valores de todos los elementos de configuración.

Con un argumento del formulario section.name, imprima solo el valor de ese elemento de configuración.

Con múltiples argumentos, imprima nombres y valores de todos los elementos de configuración con la sección correspondiente
Nombres

Con --edit, inicie un editor en el archivo de configuración a nivel de usuario. Con --global, edite el
archivo de configuración de todo el sistema. Con --local, edite el archivo de configuración a nivel de repositorio.

Con --debug, la fuente (nombre de archivo y número de línea) se imprime para cada elemento de configuración.

See hg ayuda config para obtener más información sobre los archivos de configuración.

Devuelve 0 en caso de éxito, 1 si NOMBRE no existe.

Opciones:

-tu, - desconfiado
mostrar opciones de configuración que no son de confianza

-mi, --editar
editar la configuración del usuario

-yo, --local
editar la configuración del repositorio

-gramo, --global
editar configuración global

alias: showconfig debugconfig

copia
marcar archivos como copiados para la próxima confirmación:

hg copy [OPCIÓN] ... [FUENTE] ... DEST

Marque dest como si tuviera copias de los archivos de origen. Si dest es un directorio, se colocan copias en ese
directorio. Si dest es un archivo, la fuente debe ser un solo archivo.

De forma predeterminada, este comando copia el contenido de los archivos tal como existen en el
directorio. Si se invoca con -A / - después, la operación se registra, pero no se realiza ninguna copia.
realizado.

Este comando entra en vigor con la siguiente confirmación. Para deshacer una copia antes de eso, consulte hg revertir.

Devuelve 0 en caso de éxito, 1 si se encuentran errores.

Opciones:

-UN, --después
grabar una copia que ya ha ocurrido

-F, --fuerza
copiar a la fuerza sobre un archivo administrado existente

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-norte, - corrida en seco
no realice acciones, solo imprima la salida

[+] la opción marcada se puede especificar varias veces

alias: cp

diff
repositorio diff (o archivos seleccionados):

hg diff [OPCIÓN] ... ([-c REV] | [-r REV1 [-r REV2]]) [ARCHIVO] ...

Muestra las diferencias entre las revisiones de los archivos especificados.

Las diferencias entre los archivos se muestran utilizando el formato de diferencia unificado.

Note hg diff puede generar resultados inesperados para las fusiones, ya que se comparará de forma predeterminada
contra el primer conjunto de cambios padre del directorio de trabajo si no hay revisiones
especificado.

Cuando se dan dos argumentos de revisión, se muestran los cambios entre esas revisiones. Si
solo se especifica una revisión, luego esa revisión se compara con el directorio de trabajo,
y, cuando no se especifican revisiones, los archivos del directorio de trabajo se comparan con su
primer padre.

Alternativamente, puede especificar -c / - cambiar con una revisión para ver los cambios en ese
conjunto de cambios relativo a su primer padre.

Sin la opción de texto -a / -, diff evitará generar diferencias de archivos que detecta como
binario. Con -a, diff generará una diferencia de todos modos, probablemente con resultados no deseados.

Utilice la opción -g / - git para generar diferencias en el formato de diferencias extendidas de git. Para más
información, leer hg ayuda diferencias.

Ejemplos:

· Comparar un archivo en el directorio de trabajo actual con su padre:

diferencia hg foo.c

· Comparar dos versiones históricas de un directorio, con información de cambio de nombre:

hg diff --git -r 1.0: 1.2 lib /

· Obtener estadísticas de cambio relativas al último cambio en alguna fecha:

hg diff --stat -r "fecha ('2 de mayo')"

· Diferenciar todos los archivos recién agregados que contienen una palabra clave:

hg diff "conjunto: agregado () y grep (GNU)"

· Comparar una revisión y sus padres:

hg diff -c 9353 # comparar con el primer padre
hg diff -r 9353 ^: 9353 # lo mismo usando la sintaxis revset
hg diff -r 9353 ^ 2: 9353 # comparar con el segundo padre

Devuelve 0 en caso de éxito.

Opciones:

-r,--Rvdo
revisión

-C,--cambio
cambio realizado por revisión

-a --texto
tratar todos los archivos como texto

-gramo, --git
usar el formato de diferencia extendida de git

--nodatos
omitir fechas de encabezados de diferencias

--noprefijo
omitir los prefijos a / y b / de los nombres de archivo

-pag, - show-función
mostrar en qué función está cada cambio

--contrarrestar
producir una diferencia que deshaga los cambios

-w, - ignorar-todo-espacio
ignorar el espacio en blanco al comparar líneas

-B, --ignorar-cambio-de-espacio
ignorar los cambios en la cantidad de espacio en blanco

-B, --ignorar-líneas-en-blanco
ignorar los cambios cuyas líneas están todas en blanco

-Tú,--unificado
número de líneas de contexto para mostrar

--estat resumen de cambios de estilo diffstat de salida

--raíz
producir diferencias relativas al subdirectorio

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-S, --subrepos
recurrir a subrepositorios

[+] la opción marcada se puede especificar varias veces

exportar
volcar el encabezado y las diferencias para uno o más conjuntos de cambios:

hg export [OPCIÓN] ... [-o OUTFILESPEC] [-r] [REV] ...

Imprima el encabezado del conjunto de cambios y las diferencias para una o más revisiones. Si no se da ninguna revisión,
se utiliza el padre del directorio de trabajo.

La información que se muestra en el encabezado del conjunto de cambios es: autor, fecha, nombre de la rama (si
no predeterminado), hash de conjunto de cambios, padre (s) y comentario de confirmación.

Note hg exportar puede generar una salida de diferencias inesperada para fusionar conjuntos de cambios, ya que
compare el conjunto de cambios de fusión con su primer padre únicamente.

La salida puede ser a un archivo, en cuyo caso el nombre del archivo se da usando un formato
cuerda. Las reglas de formato son las siguientes:

%%

carácter literal "%"

%H

hash de conjunto de cambios (40 dígitos hexadecimales)

%N

número de parches que se están generando

%R

número de revisión del conjunto de cambios

%b

nombre base del repositorio de exportación

%h

hash de conjunto de cambios de forma corta (12 dígitos hexadecimales)

%m

primera línea del mensaje de confirmación (solo caracteres alfanuméricos)

%n

número de secuencia con relleno de ceros, comenzando en 1

%r

número de revisión del conjunto de cambios con relleno de ceros

Sin la opción de texto -a / -, la exportación evitará generar diferencias de archivos que detecta como
binario. Con -a, la exportación generará una diferencia de todos modos, probablemente con resultados no deseados.

Utilice la opción -g / - git para generar diferencias en el formato de diferencias extendidas de git. Ver hg ayuda
diferencias para obtener más información.

Con la opción --switch-parent, la diferencia será contra el segundo padre. Puede ser
útil para revisar una combinación.

Ejemplos:

· Utilizar la exportación y la importación para trasplantar una corrección de errores a la rama actual:

exportación de hg -r 9353 | importación de hg -

· Exportar todos los conjuntos de cambios entre dos revisiones a un archivo con información de cambio de nombre:

hg export --git -r 123: 150> changes.txt

· Dividir los cambios salientes en una serie de parches con nombres descriptivos:

hg export -r "saliente ()" -o "% n-% m.patch"

Devuelve 0 en caso de éxito.

Opciones:

-Oh,--producción
imprimir salida a archivo con nombre formateado

- padre-conmutador
diff contra el segundo padre

-r,--Rvdo
revisiones para exportar

-a --texto
tratar todos los archivos como texto

-gramo, --git
usar el formato de diferencia extendida de git

--nodatos
omitir fechas de encabezados de diferencias

[+] la opción marcada se puede especificar varias veces

archivos
lista de archivos rastreados:

hg archivos [OPCIÓN] ... [PATRÓN] ...

Imprima archivos bajo el control de Mercurial en el directorio de trabajo o revisión especificada cuyo
los nombres coinciden con los patrones dados (excluyendo los archivos eliminados).

Si no se dan patrones que coincidan, este comando imprime los nombres de todos los archivos en
Control mercurial en el directorio de trabajo.

Ejemplos:

· Enumerar todos los archivos en el directorio actual:

archivos hg.

· Muestra tamaños y banderas para la revisión actual:

archivos hg -vr.

· Enumerar todos los archivos llamados README:

hg archivos -I "** / README"

· Enumerar todos los archivos binarios:

archivos hg "set: binary ()"

· Buscar archivos que contengan una expresión regular:

hg archivos "set: grep ('bob')"

· Buscar contenido de archivos rastreados con xargs y grep:

archivos hg -0 | xargs -0 grep foo

See hg ayuda . y hg ayuda conjuntos de archivos para obtener más información sobre cómo especificar el archivo
.

Devuelve 0 si se encuentra una coincidencia, 1 en caso contrario.

Opciones:

-r,--Rvdo
buscar en el repositorio tal como está en REV

-0, --imprimir0
nombre de archivo final con NUL, para usar con xargs

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-T,--plantilla
mostrar con plantilla (EXPERIMENTAL)

-S, --subrepos
recurrir a subrepositorios

[+] la opción marcada se puede especificar varias veces

olvidar
olvida los archivos especificados en la próxima confirmación:

hg olvidar [OPCIÓN] ... ARCHIVO ...

Marque los archivos especificados para que ya no se rastreen después de la próxima confirmación.

Esto solo elimina archivos de la rama actual, no de todo el historial del proyecto, y
no los borra del directorio de trabajo.

Para eliminar el archivo del directorio de trabajo, consulte hg remove.

Para deshacer un olvido antes de la siguiente confirmación, consulte hg add.

Ejemplos:

· Olvídese de los archivos binarios recién agregados:

hg olvidar "conjunto: agregado () y binario ()"

· Olvidar archivos que serían excluidos por .hgignore:

hg olvidar "set: hgignore ()"

Devuelve 0 en caso de éxito.

Opciones:

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

injerto
copiar los cambios de otras ramas en la rama actual:

injerto de hg [OPCIÓN] ... [-r REV] ... REV ...

Este comando usa la lógica de fusión de Mercurial para copiar cambios individuales de otras ramas
sin fusionar ramas en el gráfico histórico. Esto a veces se conoce como 'backporting' o
'cosecha de la cereza'. De forma predeterminada, graft copiará el usuario, la fecha y la descripción de la fuente.
conjuntos de cambios.

Conjuntos de cambios que son antepasados ​​de la revisión actual, que ya se han injertado, o
que son fusiones se omitirán.

Si se especifica --log, los mensajes de registro tendrán un comentario adjunto con la forma:

(injertado de CHANGESETHASH)

Si se especifica --force, las revisiones se injertarán incluso si ya son antepasados ​​de
o han sido injertados en el destino. Esto es útil cuando las revisiones se han realizado desde
ha sido retirado.

Si una fusión de injerto da lugar a conflictos, el proceso de injerto se interrumpe para que el
la combinación actual se puede resolver manualmente. Una vez que se abordan todos los conflictos, el injerto
El proceso puede continuar con la opción -c / - continue.

Nota La opción -c / - continue no vuelve a aplicar opciones anteriores, excepto --force.

Ejemplos:

· Copiar un solo cambio a la rama estable y editar su descripción:

actualización estable de hg
injerto de hg --editar 9393

· Injertar una variedad de conjuntos de cambios con una excepción, actualizar las fechas:

injerto de hg -D "2085 :: 2093 y no 2091"

· Continuar un injerto después de resolver conflictos:

injerto de hg -c

· Mostrar la fuente de un conjunto de cambios injertado:

hg log --debug -r.

· Mostrar revisiones ordenadas por fecha:

hg log -r 'ordenar (todo (), fecha)'

See hg ayuda las revisiones y hg ayuda revoluciones para obtener más información sobre cómo especificar revisiones.

Devuelve 0 si se completa con éxito.

Opciones:

-r,--Rvdo
revisiones al injerto

-C, --Seguir
reanudar injerto interrumpido

-mi, --editar
invocar editor en mensajes de confirmación

--Iniciar sesión agregar información de injerto al mensaje de registro

-F, --fuerza
injerto de fuerza

-RE, --fecha actual
registrar la fecha actual como fecha de compromiso

-Tú, --usuario actual
registrar el usuario actual como confirmador

-D,--fecha
registrar la fecha especificada como fecha de compromiso

-tu,--usuario
registrar al usuario especificado como confirmador

-t,--herramienta
especificar herramienta de combinación

-norte, - corrida en seco
no realice acciones, solo imprima la salida

[+] la opción marcada se puede especificar varias veces

grep
busque un patrón en archivos y revisiones especificados:

hg grep [OPCIÓN] ... PATRÓN [ARCHIVO] ...

Busque revisiones de archivos para una expresión regular.

Este comando se comporta de manera diferente a grep de Unix. Solo acepta expresiones regulares de Python / Perl. Eso
busca en el historial del repositorio, no en el directorio de trabajo. Siempre imprime la revision
número en el que aparece una coincidencia.

De forma predeterminada, grep solo imprime la salida de la primera revisión de un archivo en el que encuentra un
fósforo. Para que imprima cada revisión que contiene un cambio en el estado de coincidencia ("-" para un
coincidencia que se convierte en una no coincidencia, o "+" para una no coincidencia que se convierte en una coincidencia), utilice el
- toda la bandera.

Devuelve 0 si se encuentra una coincidencia, 1 en caso contrario.

Opciones:

-0, --imprimir0
terminar campos con NUL

--todas imprimir todas las revisiones que coincidan

-a --texto
tratar todos los archivos como texto

-F, --seguir
seguir el historial de conjuntos de cambios o el historial de archivos a través de copias y cambios de nombre

-I, --ignorar caso
ignorar mayúsculas y minúsculas al hacer coincidir

-yo, --archivos-con-coincidencias
imprimir solo nombres de archivo y revisiones que coincidan

-norte, --número de línea
imprimir números de línea coincidentes

-r,--Rvdo
solo los archivos de búsqueda cambiados dentro del rango de revisión

-tu, --usuario
enumerar el autor (largo con -v)

-D, --fecha
enumerar la fecha (abreviada con -q)

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

¡Aviso!
mostrar cabezas de rama:

cabezas de hg [-ct] [-r STARTREV] [REV] ...

Sin argumentos, muestra todas las ramas abiertas en el repositorio. Las cabezas de las ramas son
conjuntos de cambios que no tienen descendientes en la misma rama. Están donde el desarrollo
generalmente tiene lugar y son los objetivos habituales de las operaciones de actualización y fusión.

Si se dan una o más REV, solo abra las cabezas de las ramas en las ramas asociadas con el
Se muestran los conjuntos de cambios especificados. Esto significa que puede usar hg ¡Aviso! . para ver las cabezas en
la sucursal actualmente desprotegida.

Si se especifica -c / - cerrado, también muestre los cabezales de rama marcados como cerrados (consulte hg hacer
- cerca de la rama).

Si se especifica STARTREV, solo aquellos jefes que son descendientes de STARTREV serán
desplegado.

Si se especifica -t / - topo, se ignorarán las mecánicas de rama con nombre y solo se
Se mostrarán cabezas (conjuntos de cambios sin hijos).

Devuelve 0 si se encuentran cabezas coincidentes, 1 si no.

Opciones:

-r,--Rvdo
mostrar solo cabezas que sean descendientes de STARTREV

-t, --top
mostrar solo cabezas topológicas

-a --activo
mostrar solo ramales activos (DESACTIVADO)

-C, --cerrado
mostrar cabezas de rama normales y cerradas

--estilo
mostrar usando el archivo de mapa de plantilla (DEPRECATED)

-T,--plantilla
mostrar con plantilla

ayuda
mostrar ayuda para un tema determinado o una descripción general de la ayuda:

hg ayuda [-ecks] [TEMA]

Sin argumentos, imprima una lista de comandos con breves mensajes de ayuda.

Dado un tema, extensión o nombre de comando, imprima la ayuda para ese tema.

Devuelve 0 si tiene éxito.

Opciones:

-mi, --extensión
mostrar solo ayuda para extensiones

-C, --mando
mostrar solo ayuda para los comandos

-k, --palabra clave
mostrar temas que coincidan con la palabra clave

-s,--sistema
mostrar ayuda para plataformas específicas

[+] la opción marcada se puede especificar varias veces

Identifique
identificar el directorio de trabajo o la revisión especificada:

hg identificar [-nibtB] [-r REV] [SOURCE]

Imprima un resumen que identifique el estado del repositorio en REV utilizando uno o dos hash principales
identificadores, seguidos de un "+" si el directorio de trabajo tiene cambios no confirmados,
nombre de la rama (si no es el predeterminado), una lista de etiquetas y una lista de marcadores.

Cuando no se proporcione REV, imprima un resumen del estado actual del repositorio.

Especificar una ruta a la raíz del repositorio o al paquete Mercurial hará que la búsqueda opere en
ese repositorio / paquete.

Ejemplos:

· Generar un identificador de compilación para el directorio de trabajo:

hg id --id> build-id.dat

· Buscar la revisión correspondiente a una etiqueta:

ID de hg -n -r 1.3

· Comprobar la revisión más reciente de un repositorio remoto:

hg id -r consejo http://selenic.com/hg/

See hg log para generar más información sobre revisiones específicas, incluido el hash completo
identificadores.

Devuelve 0 si tiene éxito.

Opciones:

-r,--Rvdo
identificar la revisión especificada

-norte, --numero
mostrar el número de revisión local

-I, --identificación
mostrar ID de revisión global

-B, --rama
mostrar rama

-t, --etiquetas
mostrar etiquetas

-B, - marcadores
mostrar marcadores

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

alias: id

importar
importar un conjunto ordenado de parches:

hg import [OPCIÓN] ... PATCH ...

Importe una lista de parches y envíelos individualmente (a menos que se especifique --no-commit).

Para leer un parche desde la entrada estándar, use "-" como nombre del parche. Si se especifica una URL, la
El parche se descargará desde allí.

Importar primero aplica los cambios al directorio de trabajo (a menos que se especifique --bypass),
la importación se cancelará si hay cambios pendientes.

Utilice --bypass para aplicar y enviar parches directamente al repositorio, sin afectar el
directorio de trabajo. Sin --exact, los parches se aplicarán en la parte superior del trabajo
revisión principal del directorio.

Puede importar un parche directamente desde un mensaje de correo. Incluso los parches como archivos adjuntos funcionan (para
use la parte del cuerpo, debe tener el tipo text / plain o text / x-patch). De y encabezados de asunto
del mensaje de correo electrónico se utilizan como confirmador y mensaje de confirmación predeterminados. Todo el texto / cuerpo sin formato
las partes antes de la primera diferencia se agregan al mensaje de confirmación.

Si el parche importado fue generado por hg exportar, usuario y descripción de la anulación del parche
valores de los encabezados y el cuerpo del mensaje. Valores dados en la línea de comando con -m / - mensaje y
-u / - el usuario los anula.

Si se especifica --exact, la importación establecerá el directorio de trabajo en el padre de cada parche
antes de aplicarlo, y se cancelará si el conjunto de cambios resultante tiene un ID diferente al
uno grabado en el parche. Esto puede suceder debido a problemas con el conjunto de caracteres u otros
deficiencias en el formato del parche de texto.

Use --parcial para asegurarse de que se creará un conjunto de cambios a partir del parche, incluso si algunos trozos fallan
Aplicar. Los hunks que no se apliquen se escribirán a un Archivo .rej. Conflictos
luego se puede resolver a mano antes hg hacer --enmendar se ejecuta para actualizar el creado
conjunto de cambios. Esta bandera existe para permitir que las personas importen parches que se aplican parcialmente sin
perder los metadatos asociados (autor, fecha, descripción, ...).

Nota Cuando no se apliquen trozos limpiamente, hg importar --parcial creará un conjunto de cambios vacío,
importando solo los metadatos del parche.

Con -s / - similitud, hg intentará descubrir cambios de nombre y copias en el parche en el
de la misma manera que hg agregar eliminar.

Es posible utilizar programas de parche externos para realizar el parche configurando el parche de interfaz de usuario
opción de configuración. Para la herramienta interna predeterminada, el fuzz también se puede configurar a través de
parche.fuzz. Vea hg ayuda config para obtener más información sobre los archivos de configuración y cómo
utilice estas opciones.

See hg ayuda fechas para obtener una lista de formatos válidos para la fecha -d / -.

Ejemplos:

· Importar un parche tradicional de un sitio web y detectar cambios de nombre:

importación hg -s 80 http://example.com/bugfix.patch

· Importar un conjunto de cambios desde un servidor hgweb:

importación de hg http://www.selenic.com/hg/rev/5ca8c111e9aa

· Importar todos los parches en un mbox estilo Unix:

hg importar parches entrantes.mbox

· Intentar restaurar exactamente un conjunto de cambios exportado (no siempre es posible):

hg import --exact propuesto-fix.patch

· Use una herramienta externa para aplicar un parche que sea demasiado difuso para la herramienta interna predeterminada.

hg import --config ui.patch = "parche --merge" fuzzy.patch

· Cambiar el fuzzing predeterminado de 2 a un 7 menos estricto

hg import --config ui.fuzz = 7 fuzz.patch

Devuelve 0 en caso de éxito, 1 en caso de éxito parcial (consulte --parcial).

Opciones:

-pag,--banda
opción de tira de directorio para parche. Esto tiene el mismo significado que el correspondiente
opción de parche (por defecto: 1)

-B,--base
camino base (DESACTIVADO)

-mi, --editar
invocar editor en mensajes de confirmación

-F, --fuerza
omitir la comprobación de cambios pendientes no confirmados (ANULADO)

--no comprometerse
no se comprometa, solo actualice el directorio de trabajo

--derivación
aplicar parche sin tocar el directorio de trabajo

--parcial
comprometerse incluso si algunos macizos fallan

--exacto
aplicar parche a los nodos desde los que se generó

--prefijo
aplicar parche al subdirectorio

- rama de importación
use cualquier información de rama en el parche (implícito por --exact)

-metro,--mensaje
usar texto como mensaje de confirmación

-yo,--archivo de registro
leer el mensaje de confirmación del archivo

-D,--fecha
registrar la fecha especificada como fecha de compromiso

-tu,--usuario
registrar al usuario especificado como confirmador

-s,--semejanza
adivinar archivos renombrados por similitud (0 <= s <= 100)

alias: parche

amplificación de la voz entrante
mostrar nuevos conjuntos de cambios encontrados en la fuente:

hg entrante [-p] [-n] [-M] [-f] [-r REV] ... [--bundle FILENAME] [SOURCE]

Muestra los nuevos conjuntos de cambios encontrados en la ruta / URL especificada o en la ubicación de extracción predeterminada. Estas
son los conjuntos de cambios que se habrían extraído si se hubiera extraído en el momento en que emitió este
mando.

Consulte extracción para obtener detalles sobre el formato de fuente válido.

Con -B / - marcadores, el resultado de la comparación de marcadores entre local y remoto
Se muestra repositorios. Con -v / - detallado, el estado también se muestra para cada marcador
como abajo:

BM1 01234567890a agregado
BM2 1234567890ab avanzado
BM3 234567890abc divergió
BM4 34567890abcd cambiado

La acción que se lleva a cabo localmente al extraer depende del estado de cada marcador:

adicional

tirar lo creará

avanzado

pull lo actualizará

divergido

tirar creará un marcador divergente

cambiado

el resultado depende de conjuntos de cambios remotos

Desde el punto de vista del comportamiento de extracción, el marcador existente solo en el control remoto
repositorio se tratan como adicional, incluso si de hecho se elimina localmente.

Para el repositorio remoto, el uso de --bundle evita descargar los conjuntos de cambios dos veces si el
entrante es seguido por un tirón.

Ejemplos:

· Muestra los cambios entrantes con parches y una descripción completa:

hg entrante -vp

· Mostrar cambios entrantes excluyendo fusiones, almacenar un paquete:

hg en -vpM - paquete entrante.hg
hg tire entrante.hg

· Enumerar brevemente los cambios dentro de un paquete:

hg en changes.hg -T "{desc | primera línea} \ n"

Devuelve 0 si hay cambios entrantes, 1 en caso contrario.

Opciones:

-F, --fuerza
ejecutar incluso si el repositorio remoto no está relacionado

-norte, --el más reciente primero
mostrar primero el registro más reciente

--manojo
archivo para almacenar los paquetes en

-r,--Rvdo
un conjunto de cambios remoto destinado a ser agregado

-B, - marcadores
comparar marcadores

-B,--rama
una rama específica que le gustaría extraer

-pag, --parche
mostrar parche

-gramo, --git
usar el formato de diferencia extendida de git

-yo,--límite
limitar el número de cambios mostrados

-METRO, --no se fusiona
no mostrar fusiones

--estat resumen de cambios de estilo diffstat de salida

-GRAMO, --grafico
mostrar la revisión DAG

--estilo
mostrar usando el archivo de mapa de plantilla (DEPRECATED)

-T,--plantilla
mostrar con plantilla

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

-S, --subrepos
recurrir a subrepositorios

[+] la opción marcada se puede especificar varias veces

alias: en

init
crea un nuevo repositorio en el directorio dado:

hg init [-e CMD] [--remotecmd CMD] [DEST]

Inicialice un nuevo repositorio en el directorio dado. Si el directorio dado no existe,
será creado.

Si no se proporciona ningún directorio, se utiliza el directorio actual.

Es posible especificar un ssh: // URL como destino. Ver hg ayuda urls
información.

Devuelve 0 en caso de éxito.

Opciones:

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

localizar
localizar archivos que coincidan con patrones específicos (DESACTIVADO):

hg ubicar [OPCIÓN] ... [PATRÓN] ...

Imprime archivos bajo el control de Mercurial en el directorio de trabajo cuyos nombres coinciden con los dados.
.

De forma predeterminada, este comando busca en todos los directorios del directorio de trabajo. Para buscar solo
el directorio actual y sus subdirectorios, utilice "--include".

Si no se dan patrones que coincidan, este comando imprime los nombres de todos los archivos en
Control mercurial en el directorio de trabajo.

Si desea introducir la salida de este comando en el comando "xargs", use la opción -0
tanto para este comando como para "xargs". Esto evitará el problema de "xargs" en el tratamiento de
nombres de archivo que contienen espacios en blanco como varios nombres de archivo.

See hg ayuda archivos para un comando más versátil.

Devuelve 0 si se encuentra una coincidencia, 1 en caso contrario.

Opciones:

-r,--Rvdo
buscar en el repositorio tal como está en REV

-0, --imprimir0
nombre de archivo final con NUL, para usar con xargs

-F, --ruta completa
imprimir rutas completas desde la raíz del sistema de archivos

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

log
muestra el historial de revisión de todo el repositorio o archivos:

hg log [OPCIÓN] ... [ARCHIVO]

Imprima el historial de revisión de los archivos especificados o de todo el proyecto.

Si no se especifica ningún rango de revisión, el valor predeterminado es consejo: 0 a menos que se establezca --follow, en el que
caso de que el padre del directorio de trabajo se utilice como revisión inicial.

El historial de archivos se muestra sin cambiar el nombre o copiar el historial de archivos. Utilice -f / - seguir
con un nombre de archivo para seguir el historial a través de cambios de nombre y copias. - seguir sin un nombre de archivo
solo mostrará los antepasados ​​o descendientes de la revisión inicial.

De forma predeterminada, este comando imprime el número de revisión y la identificación del conjunto de cambios, etiquetas, no triviales
padres, usuario, fecha y hora, y un resumen de cada confirmación. Cuando el modificador -v / - detallado
se utiliza, se muestra la lista de archivos modificados y el mensaje de confirmación completo.

Con --graph, las revisiones se muestran como un DAG de arte ASCII con el conjunto de cambios más reciente en
la parte superior. 'o' es un conjunto de cambios, '@' es un directorio de trabajo principal, 'x' es obsoleto y '+'
representa una bifurcación donde el conjunto de cambios de las líneas siguientes es un padre de la fusión 'o' en
la misma línea.

Note hg log --parche puede generar una salida de diferencias inesperada para fusionar conjuntos de cambios, ya que
solo compare el conjunto de cambios de fusión con su primer padre. Además, solo archivos
diferente de AMBOS padres aparecerán en archivos :.

Nota Por motivos de rendimiento, hg log ARCHIVO puede omitir los cambios duplicados realizados en las ramas
y no mostrará eliminaciones ni cambios de modo. Para ver todos esos cambios, use el
- interruptor retirado.

Algunos ejemplos:

· Conjuntos de cambios con descripciones completas y listas de archivos:

hg registro -v

· Conjuntos de cambios ancestrales al directorio de trabajo:

hg registro -f

· Últimas 10 confirmaciones en la rama actual:

hg log -l 10 -b.

· Conjuntos de cambios que muestran todas las modificaciones de un archivo, incluidas las eliminaciones:

hg log --archivo eliminado.c

· Todos los conjuntos de cambios que tocan un directorio, con diferencias, excluidas las fusiones:

hg log -Mp lib /

· Todos los números de revisión que coinciden con una palabra clave:

hg log -k bug - plantilla "{rev} \ n"

· El identificador hash completo del directorio de trabajo principal:

hg log -r. --template "{nodo} \ n"

· Enumerar las plantillas de registro disponibles:

hg registro -T lista

· Comprobar si un conjunto de cambios determinado está incluido en una versión etiquetada:

hg log -r "a21ccf y ancestro (1.9)"

· Buscar todos los conjuntos de cambios de algún usuario en un rango de fechas:

hg log -k alice -d "mayo de 2008 a julio de 2008"

· Resumen de todos los conjuntos de cambios después de la última etiqueta:

hg log -r "último (etiquetado ()) ::" --template "{desc | primera línea} \ n"

See hg ayuda fechas para obtener una lista de formatos válidos para la fecha -d / -.

See hg ayuda las revisiones y hg ayuda revoluciones para obtener más información sobre cómo especificar y ordenar
revisiones.

See hg ayuda plantillas para obtener más información sobre los estilos preempaquetados y la especificación de plantillas personalizadas.

Devuelve 0 en caso de éxito.

Opciones:

-F, --seguir
seguir el historial de conjuntos de cambios o el historial de archivos a través de copias y cambios de nombre

- seguir primero
solo siga al primer padre de los conjuntos de cambios de combinación (DESACTIVADO)

-D,--fecha
mostrar las revisiones que coinciden con la especificación de la fecha

-VS, --copias
mostrar archivos copiados

-k,--palabra clave
realizar una búsqueda que no distinga entre mayúsculas y minúsculas para un texto dado

-r,--Rvdo
muestra la revisión o el conjunto de revoluciones especificado

--remoto
incluir revisiones donde se eliminaron los archivos

-metro, --sólo se fusiona
mostrar solo fusiones (DESACTIVADO)

-tu,--usuario
revisiones cometidas por el usuario

--sólo rama
mostrar solo conjuntos de cambios dentro de la rama con nombre dada (DEPRECATED)

-B,--rama
mostrar conjuntos de cambios dentro de la rama nombrada dada

-PAG,--ciruela pasa
no muestran revisión ni ninguno de sus antepasados

-pag, --parche
mostrar parche

-gramo, --git
usar el formato de diferencia extendida de git

-yo,--límite
limitar el número de cambios mostrados

-METRO, --no se fusiona
no mostrar fusiones

--estat resumen de cambios de estilo diffstat de salida

-GRAMO, --grafico
mostrar la revisión DAG

--estilo
mostrar usando el archivo de mapa de plantilla (DEPRECATED)

-T,--plantilla
mostrar con plantilla

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

alias: historia

manifiesto
generar la revisión actual o dada del manifiesto del proyecto:

manifiesto de hg [-r REV]

Imprima una lista de archivos controlados por versión para la revisión dada. Si no se da ninguna revisión,
se usa el primer padre del directorio de trabajo, o la revisión nula si no hay revisión
controlado.

Con -v, imprime permisos de archivos, enlaces simbólicos y bits ejecutables. Con --debug, imprimir archivo
hashes de revisión.

Si se especifica la opción --todos, se imprime la lista de todos los archivos de todas las revisiones. Esta
incluye archivos eliminados y renombrados.

Devuelve 0 en caso de éxito.

Opciones:

-r,--Rvdo
revisión para mostrar

--todas enumerar archivos de todas las revisiones

-T,--plantilla
mostrar con plantilla (EXPERIMENTAL)

unir
fusionar otra revisión en el directorio de trabajo:

hg fusionar [-P] [[-r] REV]

El directorio de trabajo actual se actualiza con todos los cambios realizados en la revisión solicitada
desde la última revisión antecesora común.

Los archivos que cambiaron entre cualquiera de los padres se marcan como modificados para la siguiente confirmación y un
La confirmación debe realizarse antes de que se permitan más actualizaciones del repositorio. los
la próxima confirmación tendrá dos padres.

--herramienta se puede utilizar para especificar la herramienta de combinación utilizada para las combinaciones de archivos. Anula el
Variable de entorno HGMERGE y sus archivos de configuración. Ver hg ayuda fusionar herramientas para
.

Si no se especifica ninguna revisión, el padre del directorio de trabajo es una revisión principal y la
La rama actual contiene exactamente otro encabezado, el otro encabezado se fusiona de forma predeterminada.
De lo contrario, se debe proporcionar una revisión explícita con la que fusionarse.

See hg ayuda Resolvemos para obtener información sobre el manejo de conflictos de archivos.

Para deshacer una combinación no confirmada, use hg actualización --limpio . que verificará una copia limpia de
el padre de fusión original, perdiendo todos los cambios.

Devuelve 0 en caso de éxito, 1 si hay archivos sin resolver.

Opciones:

-F, --fuerza
forzar una fusión, incluidos los cambios pendientes (ANULADO)

-r,--Rvdo
revisión para fusionar

-PAG, --avance
revisar las revisiones para fusionar (no se realiza ninguna fusión)

-t,--herramienta
especificar herramienta de combinación

saliente
muestre los conjuntos de cambios que no se encuentran en el destino:

hg saliente [-M] [-p] [-n] [-f] [-r REV] ... [DEST]

Mostrar conjuntos de cambios que no se encuentran en el repositorio de destino especificado o el envío predeterminado
localización. Estos son los conjuntos de cambios que se enviarían si se solicitara un envío.

Consulte la extracción para obtener detalles sobre los formatos de destino válidos.

Con -B / - marcadores, el resultado de la comparación de marcadores entre local y remoto
Se muestra repositorios. Con -v / - detallado, el estado también se muestra para cada marcador
como abajo:

BM1 01234567890a agregado
BM2 eliminado
BM3 234567890abc avanzado
BM4 34567890abcd divergió
BM5 4567890abcde cambiado

La acción realizada al presionar depende del estado de cada marcador:

adicional

empujar con -B lo creará

borrado

empujar con -B lo borrará

avanzado

push lo actualizará

divergido

empujar con -B lo actualizará

cambiado

empujar con -B lo actualizará

Desde el punto de vista del comportamiento de empuje, los marcadores que existen solo en el control remoto
repositorio se tratan como borrado, incluso si de hecho se agrega de forma remota.

Devuelve 0 si hay cambios salientes, 1 en caso contrario.

Opciones:

-F, --fuerza
corre incluso cuando el destino no está relacionado

-r,--Rvdo
un conjunto de cambios destinado a incluirse en el destino

-norte, --el más reciente primero
mostrar primero el registro más reciente

-B, - marcadores
comparar marcadores

-B,--rama
una rama específica que le gustaría impulsar

-pag, --parche
mostrar parche

-gramo, --git
usar el formato de diferencia extendida de git

-yo,--límite
limitar el número de cambios mostrados

-METRO, --no se fusiona
no mostrar fusiones

--estat resumen de cambios de estilo diffstat de salida

-GRAMO, --grafico
mostrar la revisión DAG

--estilo
mostrar usando el archivo de mapa de plantilla (DEPRECATED)

-T,--plantilla
mostrar con plantilla

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

-S, --subrepos
recurrir a subrepositorios

[+] la opción marcada se puede especificar varias veces

alias: fuera

padres.
mostrar los padres del directorio de trabajo o revisión (DESAPARECIDO):

padres hg [-r REV] [FILE]

Imprima las revisiones principales del directorio de trabajo. Si se proporciona una revisión a través de -r / - rev, el
padre de esa revisión se imprimirá. Si se proporciona un argumento de archivo, la revisión en
que el archivo fue cambiado por última vez (antes de la revisión del directorio de trabajo o el argumento para
--rev si se da) se imprime.

Este comando es equivalente a:

hg log -r "p1 () + p2 ()" o
hg log -r "p1 (REV) + p2 (REV)" o
hg log -r "max (:: p1 () y archivo (FILE)) + max (:: p2 () y archivo (FILE))" o
hg log -r "max (:: p1 (REV) y archivo (FILE)) + max (:: p2 (REV) y archivo (FILE))"

See hg resumen y hg ayuda revoluciones para obtener información relacionada.

Devuelve 0 en caso de éxito.

Opciones:

-r,--Rvdo
mostrar los padres de la revisión especificada

--estilo
mostrar usando el archivo de mapa de plantilla (DEPRECATED)

-T,--plantilla
mostrar con plantilla

caminos
mostrar alias para repositorios remotos:

hg caminos [NOMBRE]

Mostrar la definición del nombre de ruta simbólico NAME. Si no se da ningún nombre, muestre la definición de todos
nombres disponibles.

La opción -q / - quiet suprime toda la salida al buscar NAME y muestra solo la ruta
nombres al enumerar todas las definiciones.

Los nombres de las rutas se definen en la sección [rutas] de su archivo de configuración y en
/ etc / mercurial / hgrc. Si se ejecuta dentro de un repositorio, .hg / hgrc también se utiliza.

Los nombres de las rutas tu préstamo estudiantil y empujar por defecto tienen un significado especial. Al realizar un empujón o
operación de extracción, se utilizan como alternativas si no se especifica una ubicación en el
línea de comando. Cuando empujar por defecto está configurado, se utilizará para empujar y tu préstamo estudiantil se utilizará
para tirar de lo contrario tu préstamo estudiantil se utiliza como alternativa para ambos. Al clonar un repositorio,
la fuente de clonación se escribe como tu préstamo estudiantil in .hg / hgrc.

Note tu préstamo estudiantil y empujar por defecto aplicar a todos los entrantes (p. ej. hg amplificación de la voz entrante) y saliente
(p.ej hg saliente, hg email y hg liar) operaciones.

See hg ayuda urls para obtener más información.

Devuelve 0 en caso de éxito.

Opciones:

-T,--plantilla
mostrar con plantilla (EXPERIMENTAL)

fase
establecer o mostrar el nombre de la fase actual:

fase hg [-p | -d | -s] [-f] [-r] [REV ...]

Sin argumento, muestra el nombre de la fase de la (s) revisión (es) actual (es).

Con uno de -p / - público, -d / - borrador o -s / - secreto, cambie el valor de fase del
revisiones especificadas.

A menos que se especifique -f / - force, hg fase no moverá el conjunto de cambios de una fase inferior a una
fase superior. Las fases se ordenan de la siguiente manera:

público <borrador <secreto

Devuelve 0 en caso de éxito, 1 si algunas fases no se pueden cambiar.

(Para obtener más información sobre el concepto de fases, consulte hg ayuda fases.)

Opciones:

-pag, --público
establecer la fase del conjunto de cambios en público

-D, --borrador
establecer la fase del conjunto de cambios en borrador

-s, --secreto
establecer la fase del conjunto de cambios en secreto

-F, --fuerza
permitir mover el límite hacia atrás

-r,--Rvdo
revisión de destino

[+] la opción marcada se puede especificar varias veces

recogida
extraer cambios de la fuente especificada:

hg pull [-u] [-f] [-r REV] ... [-e CMD] [--remotecmd CMD] [FUENTE]

Extraiga los cambios de un repositorio remoto a uno local.

Esto busca todos los cambios del repositorio en la ruta o URL especificada y los agrega a un
repositorio local (el actual a menos que se especifique -R). Por defecto, esto no
actualice la copia del proyecto en el directorio de trabajo.

Uso hg amplificación de la voz entrante si desea ver lo que se hubiera agregado por un tirón en el momento en que
emitió este comando. Si luego decide agregar esos cambios al repositorio, debe
utilizan el hg recogida -r X donde X es el último conjunto de cambios listado por hg amplificación de la voz entrante.

Si se omite SOURCE, se utilizará la ruta 'predeterminada'. Ver hg ayuda urls
información.

Devuelve 0 en caso de éxito, 1 si una actualización tenía archivos sin resolver.

Opciones:

-tu, --actualizar
actualizar a un nuevo cabezal de rama si se eliminaron conjuntos de cambios

-F, --fuerza
ejecutar incluso cuando el repositorio remoto no está relacionado

-r,--Rvdo
un conjunto de cambios remoto destinado a ser agregado

-B,--marcador
marcador para tirar

-B,--rama
una rama específica que le gustaría extraer

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

[+] la opción marcada se puede especificar varias veces

empuje
empujar cambios al destino especificado:

hg push [-f] [-r REV] ... [-e CMD] [--remotecmd CMD] [DEST]

Envíe los conjuntos de cambios del repositorio local al destino especificado.

Esta operación es simétrica para tirar: es idéntica a tirar en el destino
repositorio del actual.

De forma predeterminada, push no permitirá la creación de nuevos cabezales en el destino, ya que múltiples
cabezas harían poco claro qué cabeza usar. En esta situación, se recomienda
tirar y fusionar antes de empujar.

Use --new-branch si desea permitir que push cree una nueva rama con nombre que no sea
presente en el destino. Esto le permite crear solo una nueva rama sin forzar
otros cambios.

Nota Se debe tener especial cuidado con la opción -f / - force, que impulsará todas las
cabezas en todas las ramas, una acción que casi siempre causará confusión para
colaboradores.

Si se usa -r / - rev, la revisión especificada y todos sus ancestros se enviarán al
repositorio remoto.

Si se utiliza -B / - marcador, la revisión marcada especificada, sus antepasados ​​y el
el marcador se enviará al repositorio remoto.

Por favor mira hg ayuda urls para obtener detalles importantes sobre ssh: // URLs. Si DESTINO es
omitido, se utilizará una ruta predeterminada.

Devuelve 0 si el empuje fue exitoso, 1 si no hay nada que empujar.

Opciones:

-F, --fuerza
empujar la fuerza

-r,--Rvdo
un conjunto de cambios destinado a incluirse en el destino

-B,--marcador
marcador para empujar

-B,--rama
una rama específica que le gustaría impulsar

--nueva sucursal
permitir empujar una nueva rama

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

[+] la opción marcada se puede especificar varias veces

recuperar
deshacer una transacción interrumpida:

hg recuperar

Recuperarse de una confirmación o extracción interrumpida.

Este comando intenta arreglar el estado del repositorio después de una operación interrumpida. Debería
sólo será necesario cuando Mercurial lo sugiera.

Devuelve 0 si tiene éxito, 1 si nada para recuperar o verificar falla.

remove
elimine los archivos especificados en la próxima confirmación:

hg eliminar [OPCIÓN] ... ARCHIVO ...

Programe la eliminación de los archivos indicados de la rama actual.

Este comando programa los archivos que se eliminarán en la próxima confirmación. Para deshacer una eliminación
antes de eso, mira hg revertir. Para deshacer archivos agregados, consulte hg olvidar.

-A / - after se puede usar para eliminar solo archivos que ya han sido eliminados, -f / - force can
se puede utilizar para forzar la eliminación, y -Af se puede utilizar para eliminar archivos de la siguiente revisión
sin borrarlos del directorio de trabajo.

La siguiente tabla detalla el comportamiento de eliminar para diferentes estados de archivo (columnas) y
combinaciones de opciones (filas). Los estados del archivo son Agregado [A], Limpio [C], Modificado [M] y
Falta [!] (Según lo informado por hg estado). Las acciones son Advertir, Eliminar (de la rama) y
Eliminar (del disco):

┌──────────┬───┬────┬────┬───┐
│opt / estado │ A │ C │ M │! │
├──────────┼───┼────┼────┼───┤
│ninguno │ W │ RD │ W │ R │
├──────────┼───┼────┼────┼───┤
│-f │ R │ RD │ RD │ R │
├──────────┼───┼────┼────┼───┤
│-A │ W │ W │ W │ R │
├──────────┼───┼────┼────┼───┤
│-Af │ R │ R │ R │ R │
└──────────┴───┴────┴────┴───┘

Note hg remove nunca elimina archivos en estado Agregado [A] del directorio de trabajo, no
aunque --fuerza está especificado.

Devuelve 0 en caso de éxito, 1 si se encuentran advertencias.

Opciones:

-UN, --después
registro de eliminación de archivos faltantes

-F, --fuerza
eliminar (y eliminar) el archivo incluso si se agrega o modifica

-S, --subrepos
recurrir a subrepositorios

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

alias: rm

rebautizar
renombrar archivos; equivalente a copiar + eliminar:

hg renombrar [OPCIÓN] ... FUENTE ... DEST

Marcar dest como copias de fuentes; marcar las fuentes para su eliminación. Si dest es un directorio, copias
se colocan en ese directorio. Si dest es un archivo, solo puede haber una fuente.

De forma predeterminada, este comando copia el contenido de los archivos tal como existen en el
directorio. Si se invoca con -A / - después, la operación se registra, pero no se realiza ninguna copia.
realizado.

Este comando entra en vigor en la próxima confirmación. Para deshacer un cambio de nombre anterior, consulte hg revertir.

Devuelve 0 en caso de éxito, 1 si se encuentran errores.

Opciones:

-UN, --después
registrar un cambio de nombre que ya ha ocurrido

-F, --fuerza
copiar a la fuerza sobre un archivo administrado existente

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-norte, - corrida en seco
no realice acciones, solo imprima la salida

[+] la opción marcada se puede especificar varias veces

alias: mover mv

Resolvemos
rehacer fusiones o establecer / ver el estado de fusión de archivos:

hg resolve [OPCIÓN] ... [ARCHIVO] ...

Las fusiones con conflictos no resueltos suelen ser el resultado de fusiones no interactivas utilizando el
interno: fusionar ajuste de configuración, o una herramienta de combinación de línea de comandos como diferencia3. La resolución
El comando se usa para administrar los archivos involucrados en una combinación, después hg unir se ha ejecutado, y
antes hg hacer se ejecuta (es decir, el directorio de trabajo debe tener dos padres). Ver hg ayuda
fusionar herramientas para obtener información sobre la configuración de herramientas de combinación.

El comando resolve se puede utilizar de las siguientes formas:

· hg Resolvemos [--herramienta HERRAMIENTA] EXPEDIENTE...: intenta volver a fusionar los archivos especificados, descartando
cualquier intento de fusión anterior. No se realiza una nueva fusión para los archivos que ya están marcados como
resuelto. Usar --todos / -a para seleccionar todos los archivos sin resolver. --herramienta se puede utilizar para especificar el
herramienta de combinación utilizada para los archivos dados. Anula la variable de entorno HGMERGE y
sus archivos de configuración. El contenido del archivo anterior se guarda con un .orig sufijo.

· hg Resolvemos -m [EXPEDIENTE]: marcar un archivo como resuelto (por ejemplo, después de haberlo
arreglado los archivos). El valor predeterminado es marcar todos los archivos sin resolver.

· hg Resolvemos -u [EXPEDIENTE]...: marca un archivo como no resuelto. El valor predeterminado es marcar todo resuelto
archivos.

· hg Resolvemos -l: lista de archivos que han tenido o todavía tienen conflictos. En la lista impresa, U =
sin resolver y R = resuelto.

Nota Mercurial no le permitirá enviar archivos con conflictos de fusión sin resolver. Debes
utilizan el hg Resolvemos -m ... antes de que pueda comprometerse después de una fusión conflictiva.

Devuelve 0 en caso de éxito, 1 si algún archivo falla en un intento de resolución.

Opciones:

-a --todas
seleccionar todos los archivos sin resolver

-yo, --lista
enumerar el estado de los archivos que necesitan fusionarse

-metro, --Marcos
marcar archivos como resueltos

-tu, --desmarcar
marcar archivos como no resueltos

-norte, --sin Estado
ocultar prefijo de estado

-t,--herramienta
especificar herramienta de combinación

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-T,--plantilla
mostrar con plantilla (EXPERIMENTAL)

[+] la opción marcada se puede especificar varias veces

revertir
restaurar archivos a su estado de pago:

hg revert [OPCIÓN] ... [-r REV] [NOMBRE] ...

Nota Para consultar revisiones anteriores, debe utilizar hg actualización REV. Para cancelar un
fusión no confirmada (y perderá los cambios), utilice hg actualización --limpio ..

Sin una revisión especificada, revierte los archivos o directorios especificados al contenido que
tenía en el padre del directorio de trabajo. Esto restaura el contenido de los archivos a un
estado sin modificar y no programa las adiciones, eliminaciones, copias y renombra. Si el trabajo
El directorio tiene dos padres, debe especificar explícitamente una revisión.

Usando las opciones de fecha -r / - rev o -d / -, revierte los archivos o directorios dados a su
estados a partir de una revisión específica. Porque revertir no cambia el directorio de trabajo
padres, esto hará que estos archivos parezcan modificados. Esto puede ser útil para "retroceder"
parte o la totalidad de un cambio anterior. Ver hg retirarse para un método relacionado.

Los archivos modificados se guardan con un sufijo .orig antes de revertir. Para deshabilitar estas copias de seguridad,
use --no-copia de seguridad.

See hg ayuda fechas para obtener una lista de formatos válidos para la fecha -d / -.

See hg ayuda retirarse para encontrar una forma de revertir el efecto de un conjunto de cambios anterior.

Devuelve 0 en caso de éxito.

Opciones:

-a --todas
revertir todos los cambios cuando no se dan argumentos

-D,--fecha
fecha de coincidencia de revisión más alta

-r,--Rvdo
volver a la revisión especificada

-VS, --sin respaldo
no guarde copias de seguridad de archivos

-I, --interactivo
seleccionar interactivamente los cambios (EXPERIMENTAL)

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-norte, - corrida en seco
no realice acciones, solo imprima la salida

[+] la opción marcada se puede especificar varias veces

rollback
revertir la última transacción (PELIGROSO) (ANULADO):

reversión hg

Por favor, use hg hacer --enmendar en lugar de retroceder para corregir errores en la última confirmación.

Este comando debe usarse con cuidado. Solo hay un nivel de reversión y hay
no hay forma de deshacer una reversión. También restaurará el estado de directorio en el momento de la última
transacción, perdiendo cualquier cambio de estado de directorio desde ese momento. Este comando no altera el
directorio de trabajo.

Las transacciones se utilizan para encapsular los efectos de todos los comandos que crean nuevos
conjuntos de cambios o propagar conjuntos de cambios existentes en un repositorio.

Por ejemplo, los siguientes comandos son transaccionales y sus efectos se pueden lanzar
espalda:

· Comprometerse

· Importar

· jalar

· Empujar (con este repositorio como destino)

· Desacoplar

Para evitar la pérdida permanente de datos, la reversión se negará a revertir una transacción de confirmación si
no está registrado. Utilice --force para anular esta protección.

Este comando no está diseñado para su uso en repositorios públicos. Una vez que los cambios son visibles para
tirar de otros usuarios, revertir una transacción localmente es ineficaz (alguien más puede
ya han tirado los cambios). Además, una carrera es posible con lectores de la
repositorio; por ejemplo, una extracción en curso del repositorio puede fallar si se realiza una reversión
realizado.

Devuelve 0 en caso de éxito, 1 si no hay datos de reversión disponibles.

Opciones:

-norte, - corrida en seco
no realice acciones, solo imprima la salida

-F, --fuerza
ignorar las medidas de seguridad

raíz
imprima la raíz (arriba) del directorio de trabajo actual:

raíz de hg

Imprime el directorio raíz del repositorio actual.

Devuelve 0 en caso de éxito.

ayudar
iniciar servidor web independiente:

hg servir [OPCIÓN] ...

Inicie un navegador de repositorio HTTP local y extraiga el servidor. Puede usar esto para compartir ad-hoc
y navegación de repositorios. Se recomienda utilizar un servidor web real para servir a un
repositorio durante períodos de tiempo más largos.

Tenga en cuenta que el servidor no implementa control de acceso. Esto significa que, por
por defecto, cualquiera puede leer desde el servidor y nadie puede escribir en él por defecto. Selecciona el
web.allow_push opción de * para permitir que todos accedan al servidor. Deberías usar un real
servidor web si necesita autenticar usuarios.

De forma predeterminada, el servidor registra los accesos a stdout y los errores a stderr. Utilizar el
-A / - accesslog y -E / - opciones de errorlog para registrar archivos.

Para que el servidor elija un número de puerto libre para escuchar, especifique un número de puerto de 0; en
En este caso, el servidor imprimirá el número de puerto que utiliza.

Devuelve 0 en caso de éxito.

Opciones:

-UN,--registro de acceso
nombre del archivo de registro de acceso para escribir

-D, --demonio
ejecutar el servidor en segundo plano

--daemon-pipefds
utilizado internamente por el modo demonio

-MI,--registro de errores
nombre del archivo de registro de errores en el que escribir

-pag,--Puerto
puerto para escuchar (predeterminado: 8000)

-a--Dirección
dirección para escuchar (predeterminado: todas las interfaces)

--prefijo
ruta de prefijo para servir desde (predeterminado: raíz del servidor)

-norte,--nombre
nombre para mostrar en las páginas web (predeterminado: directorio de trabajo)

--web-conf
nombre del archivo de configuración hgweb (consulte "hg help hgweb")

--webdir-conf
nombre del archivo de configuración hgweb (DEPRECATED)

--pid-archivo
nombre del archivo para escribir el ID del proceso

--stdio
para clientes remotos

--cmdserver
para clientes remotos

-t,--plantillas
plantillas web para usar

--estilo
estilo de plantilla para usar

-6, --ipv6
utilizar IPv6 además de IPv4

--certificado
Archivo de certificado SSL

estado
mostrar archivos modificados en el directorio de trabajo:

hg status [OPCIÓN] ... [ARCHIVO] ...

Muestra el estado de los archivos en el repositorio. Si se dan nombres, solo los archivos que coinciden son
mostrado. Los archivos limpios o ignorados o el origen de una operación de copia / movimiento no se
enumerados a menos que se proporcionen -c / - clean, -i / - ignorado, -C / - copias o -A / -. A menos que las opciones
se describen con "mostrar sólo ...", se utilizan las opciones -mardu.

La opción -q / - silencioso oculta los archivos sin seguimiento (desconocidos e ignorados) a menos que se solicite explícitamente
con -u / - desconocido o -i / - ignorado.

Note hg estado puede parecer que no está de acuerdo con diff si los permisos han cambiado o una combinación
ha ocurrido. El formato estándar de diferencias no informa cambios de permisos y diferencias
solo informa cambios relativos a un padre combinado.

Si se proporciona una revisión, se utiliza como revisión base. Si se dan dos revisiones,
se muestran las diferencias entre ellos. La opción --change también se puede utilizar como atajo
para enumerar los archivos modificados de una revisión de su primer padre.

Los códigos utilizados para mostrar el estado de los archivos son:

M = modificado
A = agregado
R = eliminado
C = limpio
! = faltante (eliminado por un comando que no es de hg, pero aún se rastrea)
? = sin seguimiento
Yo = ignorado
= origen del archivo anterior (con --copias)

Ejemplos:

· Mostrar cambios en el directorio de trabajo relativos a un conjunto de cambios:

estado de hg --rev 9353

· Mostrar cambios en el directorio de trabajo en relación con el directorio actual (ver hg ayuda
. para más información):

estado de hg re:

· Mostrar todos los cambios, incluidas las copias en un conjunto de cambios existente:

estado de hg --copias --cambiar 9353

· Obtener una lista separada por NUL de archivos agregados, adecuada para xargs:

estado de hg -an0

Devuelve 0 en caso de éxito.

Opciones:

-UN, --todas
mostrar el estado de todos los archivos

-metro, --modificado
mostrar solo archivos modificados

-a --adicional
mostrar solo archivos agregados

-r, --remoto
mostrar solo archivos eliminados

-D, - eliminado
mostrar solo archivos eliminados (pero seguidos)

-C, --limpio
mostrar solo archivos sin cambios

-tu, --desconocido
mostrar solo archivos desconocidos (no rastreados)

-I, - ignorado
mostrar solo archivos ignorados

-norte, --sin Estado
ocultar prefijo de estado

-VS, --copias
mostrar el origen de los archivos copiados

-0, --imprimir0
nombre de archivo final con NUL, para usar con xargs

--Rvdo
mostrar la diferencia con la revisión

--cambio
enumerar los archivos modificados de una revisión

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-S, --subrepos
recurrir a subrepositorios

-T,--plantilla
mostrar con plantilla (EXPERIMENTAL)

[+] la opción marcada se puede especificar varias veces

alias: st

resumen
resumir el estado del directorio de trabajo:

resumen de hg [--remote]

Esto genera un breve resumen del estado del directorio de trabajo, incluidos los padres, la rama,
estado de confirmación, fase y actualizaciones disponibles.

Con la opción --remote, esto verificará las rutas predeterminadas para entradas y salidas
cambios. Esto puede llevar mucho tiempo.

Devuelve 0 en caso de éxito.

Opciones:

--remoto
comprobar si hay empujar y tirar

alias: suma

etiqueta
agregue una o más etiquetas para la revisión actual o dada:

etiqueta hg [-f] [-l] [-m TEXTO] [-d FECHA] [-u USUARIO] [-r REV] NOMBRE ...

Nombra una revisión en particular usando .

Las etiquetas se utilizan para nombrar revisiones particulares del repositorio y son muy útiles para
comparar diferentes revisiones, para volver a versiones anteriores significativas o para marcar la rama
puntos como lanzamientos, etc. Normalmente, no se permite cambiar una etiqueta existente; use -f / - fuerza
para anular.

Si no se proporciona ninguna revisión, se utiliza el padre del directorio de trabajo.

Para facilitar el control de versiones, la distribución y la combinación de etiquetas, se almacenan como
archivo llamado ".hgtags" que se administra de manera similar a otros archivos de proyecto y se puede
editado a mano si es necesario. Esto también significa que el etiquetado crea una nueva confirmación. El archivo
".hg / localtags" se utiliza para etiquetas locales (no se comparte entre repositorios).

Las confirmaciones de etiquetas generalmente se realizan en la cabecera de una rama. Si el padre del trabajador
el directorio no es un jefe de sucursal, hg etiqueta aborta; use -f / - fuerza para forzar el compromiso de la etiqueta a
basarse en un conjunto de cambios que no sea de cabeza.

See hg ayuda fechas para obtener una lista de formatos válidos para la fecha -d / -.

Dado que los nombres de las etiquetas tienen prioridad sobre los nombres de las ramas durante la búsqueda de revisiones,
Se desaconseja el nombre de rama como nombre de etiqueta.

Devuelve 0 en caso de éxito.

Opciones:

-F, --fuerza
forzar etiqueta

-yo, --local
hacer que la etiqueta sea local

-r,--Rvdo
revisión para etiquetar

--retirar
quitar una etiqueta

-mi, --editar
invocar editor en mensajes de confirmación

-metro,--mensaje
usar texto como mensaje de confirmación

-D,--fecha
registrar la fecha especificada como fecha de compromiso

-tu,--usuario
registrar al usuario especificado como confirmador

etiquetas
enumerar las etiquetas del repositorio:

etiquetas hg

Esto enumera etiquetas tanto regulares como locales. Cuando se utiliza el modificador -v / - verbose, un tercer
la columna "local" se imprime para las etiquetas locales. Cuando se usa el interruptor silencioso -q / -, solo el
Se imprime el nombre de la etiqueta.

Devuelve 0 en caso de éxito.

Opciones:

-T,--plantilla
mostrar con plantilla (EXPERIMENTAL)

de estilista
mostrar la revisión de la sugerencia (DEPRECATED):

propina hg [-p] [-g]

La revisión de la sugerencia (generalmente llamada sugerencia) es el conjunto de cambios agregado más recientemente a la
repositorio (y, por lo tanto, el encabezado cambiado más recientemente).

Si acaba de realizar una confirmación, esa confirmación será la sugerencia. Si acabas de tirar
cambios de otro repositorio, la punta de ese repositorio se convierte en la punta actual. El
La etiqueta "tip" es especial y no se puede renombrar ni asignar a un conjunto de cambios diferente.

Este comando está obsoleto, utilice hg ¡Aviso! preferiblemente.

Devuelve 0 en caso de éxito.

Opciones:

-pag, --parche
mostrar parche

-gramo, --git
usar el formato de diferencia extendida de git

--estilo
mostrar usando el archivo de mapa de plantilla (DEPRECATED)

-T,--plantilla
mostrar con plantilla

desagregar
aplicar uno o más archivos de grupo de cambios:

hg unbundle [-u] ARCHIVO ...

Aplique uno o más archivos de grupo de cambios comprimidos generados por el comando bundle.

Devuelve 0 en caso de éxito, 1 si una actualización tiene archivos sin resolver.

Opciones:

-tu, --actualizar
actualizar a un nuevo jefe de sucursal si los conjuntos de cambios se desagregaron

actualización
actualizar directorio de trabajo (o cambiar revisiones):

hg actualización [-c] [-C] [-d FECHA] [[-r] REV]

Actualice el directorio de trabajo del repositorio al conjunto de cambios especificado. Si no hay un conjunto de cambios
especificado, actualice a la punta de la rama con nombre actual y mueva el marcador activo (consulte
hg ayuda marcadores).

La actualización establece la revisión principal del directorio de trabajo en el conjunto de cambios especificado (consulte hg
ayuda padres.).

Si el conjunto de cambios no es un descendiente o un antepasado del padre del directorio de trabajo, el
la actualización se cancela. Con la opción -c / - check, se comprueba el directorio de trabajo
cambios no comprometidos; si no se encuentra ninguno, el directorio de trabajo se actualiza al especificado
conjunto de cambios.

Las siguientes reglas se aplican cuando el directorio de trabajo contiene cambios no confirmados:

1. Si no se especifica -c / - check ni -C / - clean, y si el conjunto de cambios solicitado es un
ancestro o descendiente del padre del directorio de trabajo, los cambios no confirmados son
combinado en el conjunto de cambios solicitado y el resultado combinado se deja sin confirmar. Si el
El conjunto de cambios solicitado no es un ancestro o descendiente (es decir, está en otro
branch), la actualización se cancela y los cambios no confirmados se conservan.

2. Con la opción de verificación -c / -, la actualización se cancela y los cambios no confirmados se
Preservado.

3. Con la opción -C / - clean, los cambios no confirmados se descartan y el directorio de trabajo
se actualiza al conjunto de cambios solicitado.

Para cancelar una combinación no confirmada (y perder sus cambios), use hg actualización --limpio ..

Utilice nulo como conjunto de cambios para eliminar el directorio de trabajo (como hg clonar -U).

Si desea revertir solo un archivo a una revisión anterior, use hg revertir [-r RDO] NOMBRE.

See hg ayuda fechas para obtener una lista de formatos válidos para la fecha -d / -.

Devuelve 0 en caso de éxito, 1 si hay archivos sin resolver.

Opciones:

-VS, --limpio
descartar cambios no confirmados (sin respaldo)

-C, --cheque
actualizar en todas las ramas si no hay cambios no confirmados

-D,--fecha
fecha de coincidencia de revisión más alta

-r,--Rvdo
revisión

-t,--herramienta
especificar herramienta de combinación

alias: up checkout co

verificar
verificar la integridad del repositorio:

hg verificar

Verifique la integridad del repositorio actual.

Esto realizará una verificación exhaustiva de la integridad del repositorio, validando los hash
y sumas de comprobación de cada entrada en el registro de cambios, el manifiesto y los archivos de seguimiento, así como
integridad de sus enlaces cruzados e índices.

Consulte https://mercurial-scm.org/wiki/RepositoryCorruption para obtener más información sobre
recuperación de la corrupción del repositorio.

Devuelve 0 en caso de éxito, 1 si se encuentran errores.

versión
versión de salida e información de derechos de autor:

versión hg

versión de salida e información de derechos de autor

FECHA FORMATOS


Algunos comandos permiten al usuario especificar una fecha, por ejemplo:

· Anulación, confirmación, importación, etiqueta: especifique la fecha de confirmación.

· Registrar, revertir, actualizar: seleccione revisión (es) por fecha.

Muchos formatos de fecha son válidos. Aquí hay unos ejemplos:

· Mie. Dic 6 13:18:29 2006 (zona horaria local asumida)

· Dic 6 13:18 -0600 (año asumido, compensación de tiempo proporcionada)

· Dic 6 13:18 UTC (UTC y GMT son alias de +0000)

· Dic 6 (medianoche)

· 13:18 (asumido hoy)

· 3:39 (Se supone que a las 3:39 a. M.)

· 3:39pm (15: 39)

· 2006-12-06 13:18:29 (Formato ISO 8601)

· 2006-12-6 13:18

· 2006-12-6

· 12 - 6

· 12/6

· 12/6/6 (6 de diciembre de 2006)

· hoy (medianoche)

· Ayer (medianoche)

· ahora - ahora

Por último, está el formato interno de Mercurial:

· 1165411109 0 (Miércoles 6 de diciembre a las 13:18:29 de 2006 UTC)

Este es el formato de representación interna de las fechas. El primer número es el número de
segundos desde la época (1970-01-01 00:00 UTC). El segundo es el desplazamiento del local
zona horaria, en segundos al oeste de UTC (negativo si la zona horaria está al este de UTC).

El comando de registro también acepta rangos de fechas:

· <FECHA - en o antes de una fecha / hora determinada

· > FECHA - en o después de una fecha / hora determinada

· FECHA a FECHA - un rango de fechas, inclusive

· -DÍAS - dentro de un número determinado de días a partir de hoy

DIFF FORMATOS


El formato predeterminado de Mercurial para mostrar cambios entre dos versiones de un archivo es
compatible con el formato unificado de GNU diff, que puede ser utilizado por el parche GNU y muchos
otras herramientas estándar.

Si bien este formato estándar suele ser suficiente, no codifica la siguiente información:

· Estado ejecutable y otros bits de permiso

· Copiar o cambiar el nombre de la información

· Cambios en archivos binarios

· Creación o eliminación de archivos vacíos

Mercurial también admite el formato diff extendido de git VCS que aborda estos
limitaciones. El formato git diff no se produce de forma predeterminada porque algunas herramientas generalizadas
todavía no entiendo este formato.

Esto significa que al generar diffs desde un repositorio de Mercurial (por ejemplo, con hg exportar),
debe tener cuidado con cosas como copias de archivos y cambios de nombre u otras cosas mencionadas
anterior, porque al aplicar una diferencia estándar a un repositorio diferente, este extra
la información se pierde. Las operaciones internas de Mercurial (como empujar y tirar) no se ven afectadas
por esto, porque utilizan un formato binario interno para comunicar cambios.

Para hacer que Mercurial produzca el formato de diferencia extendido git, use la opción --git disponible para
muchos comandos, o establezca 'git = True' en la sección [diff] de su archivo de configuración. Ustedes
no es necesario establecer esta opción al importar diffs en este formato o usarlos en el mq
extensión.

MEDIO AMBIENTE VARIABLES


HG Ruta al ejecutable 'hg', que se pasa automáticamente al ejecutar ganchos, extensiones o
herramientas externas. Si no está configurado o está vacío, este es el nombre del ejecutable hg si está congelado,
o un ejecutable llamado 'hg' (con% PATHEXT% [predeterminado en COM / EXE / BAT / CMD]
extensiones en Windows).

HGEDITOR
Este es el nombre del editor que se ejecutará al realizar la confirmación. Ver EDITOR.

(obsoleto, use el archivo de configuración)

CODIFICACIÓN HG
Esto anula la configuración regional predeterminada detectada por Mercurial. Esta configuración es
se utiliza para convertir datos, incluidos nombres de usuario, descripciones de conjuntos de cambios, nombres de etiquetas y
sucursales. Esta configuración se puede anular con la opción de línea de comandos --encoding.

MODO DE CODIFICACIÓN HG
Esto establece el comportamiento de Mercurial para manejar caracteres desconocidos durante la transcodificación.
entrada del usuario. El valor predeterminado es "estricto", lo que hace que Mercurial aborte si no puede
mapear un personaje. Otras configuraciones incluyen "reemplazar", que reemplaza desconocido
caracteres e "ignorar", que los elimina. Esta configuración se puede anular con el
--encodingmode opción de línea de comandos.

HGENCODINGAMBIGUOUS
Esto establece el comportamiento de Mercurial para manejar caracteres con anchos "ambiguos" como
caracteres latinos acentuados con fuentes de Asia oriental. Por defecto, Mercurial asume
los caracteres ambiguos son estrechos, establezca esta variable en "ancho" si dichos caracteres
causar problemas de formato.

FUSIÓN
Un ejecutable que se utilizará para resolver conflictos de combinación. El programa se ejecutará
con tres argumentos: archivo local, archivo remoto, archivo ancestro.

(obsoleto, use el archivo de configuración)

HGRCPATH
Una lista de archivos o directorios para buscar archivos de configuración. El separador de elementos es
":" en Unix, ";" en Windows. Si no se establece HGRCPATH, la ruta de búsqueda predeterminada de la plataforma
se utiliza. Si está vacío, solo se lee el .hg / hgrc del repositorio actual.

Para cada elemento en HGRCPATH:

· Si es un directorio, se agregan todos los archivos que terminan en .rc

· De lo contrario, se agregará el archivo en sí

HGPLANO
Cuando se establece, esto deshabilita cualquier ajuste de configuración que pueda cambiar la configuración de Mercurial.
salida predeterminada. Esto incluye codificación, valores predeterminados, modo detallado, modo de depuración, silencio
modo, rastreo y localización. Esto puede resultar útil al realizar secuencias de comandos contra
Mercurial frente a la configuración de usuario existente.

Las opciones equivalentes establecidas a través de indicadores de línea de comando o variables de entorno no son
anulado.

HGPLAINEXCEPTO
Esta es una lista de características separadas por comas para conservar cuando HGPLAIN está habilitado.
Actualmente se admiten los siguientes valores:

alias

No elimines los alias.

i18n

Preservar la internacionalización.

revsetalias

No elimine los alias de revset.

Establecer HGPLAINEXCEPT en cualquier cosa (incluso una cadena vacía) habilitará el modo simple.

HGUSER Esta es la cadena utilizada como autor de una confirmación. Si no se establece, los valores disponibles
serán considerados en este orden:

· HGUSER (obsoleto)

· Archivos de configuración del HGRCPATH

· CORREO ELECTRÓNICO

· Aviso interactivo

· LOGNAME (con @nombredehost adjunto)

(obsoleto, use el archivo de configuración)

E-MAIL Puede usarse como autor de una confirmación; ver HGUSER.

NOMBRE DE REGISTRO
Puede usarse como autor de una confirmación; ver HGUSER.

VISUAL Este es el nombre del editor que se utilizará al realizar la confirmación. Ver EDITOR.

EDITOR A veces, Mercurial necesita abrir un archivo de texto en un editor para que un usuario lo modifique,
por ejemplo, al escribir mensajes de confirmación. El editor que utiliza está determinado por
mirando las variables de entorno HGEDITOR, VISUAL y EDITOR, en ese orden.
Se elige el primero que no esté vacío. Si todos están vacíos, el editor predeterminado es
'editor sensato'.

PITONPATO
Python usa esto para encontrar módulos importados y es posible que deba configurarse
apropiadamente si este Mercurial no está instalado en todo el sistema.

USO ADICIONAL CATEGORIAS


Mercurial tiene la capacidad de agregar nuevas funciones mediante el uso de extensiones. Extensiones
puede agregar nuevos comandos, agregar opciones a los comandos existentes, cambiar el comportamiento predeterminado de
comandos o implementar ganchos.

Para habilitar la extensión "foo", ya sea incluida con Mercurial o en la ruta de búsqueda de Python,
cree una entrada para él en su archivo de configuración, así:

[extensiones]
foo =

También puede especificar la ruta completa a una extensión:

[extensiones]
mi característica = ~ / .hgext / myfeature.py

See hg ayuda config para obtener más información sobre los archivos de configuración.

Las extensiones no se cargan de forma predeterminada por una variedad de razones: pueden aumentar el inicio
gastos generales; pueden estar destinados únicamente a un uso avanzado; pueden proporcionar potencialmente
habilidades peligrosas (como permitirle destruir o modificar el historial); pueden no ser
listo para el horario de máxima audiencia; o pueden alterar algunos comportamientos habituales de las acciones de Mercurial. Está
por lo tanto, depende del usuario activar las extensiones según sea necesario.

Para deshabilitar explícitamente una extensión habilitada en un archivo de configuración de alcance más amplio,
anteponer su ruta con!:

[extensiones]
# deshabilitar la barra de extensión que reside en /path/to/extension/bar.py
bar =! /ruta/a/extensión/bar.py
# ídem, pero no se proporcionó ninguna ruta para la extensión baz
baz =!

extensiones deshabilitadas:

acl ganchos para controlar el acceso al repositorio

caja negra
registrar eventos del repositorio en una caja negra para depurarlos

bugzilla
ganchos para integrarse con el rastreador de errores de Bugzilla

censurar borrar el contenido del archivo en una revisión determinada

batir comando para mostrar estadísticas sobre el historial del repositorio

paquetes de clones
anunciar paquetes pregenerados para sembrar clones

Color colorear la salida de algunos comandos

convertir
importar revisiones de repositorios VCS extranjeros a Mercurial

eol gestionar automáticamente las nuevas líneas en los archivos del repositorio

extdiff
comando para permitir que programas externos comparen revisiones

factótum
autenticación http con factotum

gpg comandos para firmar y verificar conjuntos de cambios

hgcia ganchos para integrarse con el servicio de notificación CIA.vc

hgk navegar por el repositorio de forma gráfica

destacar
resaltado de sintaxis para hgweb (requiere Pygments)

historia
edición de historia interactiva

keyword
expandir palabras clave en archivos de seguimiento

archivos grandes
rastrear archivos binarios grandes

mq administrar una pila de parches

notificar ganchos para enviar notificaciones push por correo electrónico

pagar navegar por la salida del comando con un buscapersonas externo

bomba de parche
comando para enviar conjuntos de cambios como (una serie de) correos electrónicos de parche

purga comando para eliminar archivos sin seguimiento del directorio de trabajo

rebase comando para mover conjuntos de revisiones a un antepasado diferente

grabar comandos para seleccionar interactivamente cambios para commit / qrefresh

volver a vincular recrea los enlaces duros entre los clones del repositorio

esquemas
extender esquemas con accesos directos a enjambres de repositorios

comparte compartir un historial común entre varios directorios de trabajo

dejar de lado guardar y restaurar cambios en el directorio de trabajo

tira Eliminar conjuntos de cambios y sus descendientes de la historia.

trasplante
comando para trasplantar conjuntos de cambios de otra rama

win32mbcs
Permitir el uso de rutas MBCS con codificaciones problemáticas.

zeroconf
descubrir y publicitar repositorios en la red local

ESPECIFICANDO ARCHIVO CONJUNTOS


Mercurial admite un lenguaje funcional para seleccionar un conjunto de archivos.

Como otros patrones de archivo, este tipo de patrón se indica con un prefijo, 'set:'. El idioma
admite varios predicados unidos por operadores infijos. El paréntesis puede ser
utilizado para agrupar.

Los identificadores como nombres de archivos o patrones deben estar entre comillas simples o dobles si
contienen caracteres fuera de [. * {} []? / \ _ a-zA-Z0-9 \ x80- \ xff] o si coinciden con uno de
los predicados predefinidos. Esto generalmente se aplica a patrones de archivo que no sean globales y
argumentos para predicados.

Se pueden usar caracteres especiales en identificadores entre comillas escapándolos, por ejemplo, \n is
interpretado como una nueva línea. Para evitar que se interpreten, las cadenas pueden tener el prefijo
r, p.ej r '...'.

Hay un operador de prefijo único:

no x

Archivos que no están en x. La forma corta es ! x.

Estos son los operadores infijos admitidos:

x y y

La intersección de archivos en x e y. La forma corta es x & y.

x or y

La unión de archivos en xey. Hay dos formas cortas alternativas: x | y y x +
y.

x - y

Archivos en x pero no en y.

Se admiten los siguientes predicados:

adicional()

Archivo que se agrega de acuerdo con hg estado.

binario()

Archivo que parece ser binario (contiene bytes NUL).

limpiar()

Archivo limpio de acuerdo con hg estado.

copiado ()

Archivo que se registra como copiado.

eliminado ()

Alias ​​para desaparecido().

codificación (nombre)

El archivo se puede decodificar correctamente con la codificación de caracteres dada. Puede no ser
útil para codificaciones distintas de ASCII y UTF-8.

eol (estilo)

El archivo contiene nuevas líneas del estilo dado (dos, unix, mac). Los archivos binarios son
excluidos, los archivos con terminaciones de línea mixtas coinciden con varios estilos.

exec ()

Archivo marcado como ejecutable.

grep (expresión regular)

El archivo contiene la expresión regular dada.

hgignore ()

Archivo que coincide con el patrón .hgignore activo.

ignorado ()

Archivo que se ignora según hg estado. Estos archivos solo se considerarán si
se utiliza este predicado.

desaparecido()

Archivo que falta según hg estado.

modificado()

Archivo que se modifica según hg estado.

portátil()

Archivo que tiene un nombre portátil. (Esto no incluye nombres de archivo con mayúsculas y minúsculas
colisiones.)

remoto()

Archivo que se elimina de acuerdo con hg estado.

resuelto()

Archivo marcado como resuelto según hg Resolvemos -l.

tamaño (expresión)

El tamaño del archivo coincide con la expresión dada. Ejemplos:

· 1k (archivos de 1024 a 2047 bytes)

· <20k (archivos de menos de 20480 bytes)

·> = .5MB (archivos de al menos 524288 bytes)

· 4k - 1MB (archivos de 4096 bytes a 1048576 bytes)

subrepo ([patrón])

Subrepositorios cuyas rutas coinciden con el patrón dado.

enlace simbólico ()

Archivo marcado como enlace simbólico.

desconocido()

Archivo desconocido según hg estado. Estos archivos solo se considerarán si
se utiliza este predicado.

irresoluto()

Archivo marcado como no resuelto según hg Resolvemos -l.

Algunas consultas de muestra:

· Muestra el estado de los archivos que parecen ser binarios en el directorio de trabajo:

estado de hg -A "conjunto: binario ()"

· Olvídese de los archivos que están en .hgignore pero que ya están rastreados:

hg olvidar "set: hgignore () y no ignorado ()"

· Busque archivos de texto que contengan una cadena:

hg archivos "conjunto:grep(mágico) y no binario () "

· Encuentra archivos C en una codificación no estándar:

hg archivos "conjunto: **. cy no codificados ('UTF-8')"

· Revertir copias de archivos binarios grandes:

hg revert "conjunto: copiado () y binario () y tamaño ('> 1M')"

· Elimina los archivos enumerados en foo.lst que contienen la letra a o b:

hg eliminar "set: 'listfile: foo.lst' y (** a * o ** b *)"

Vea también hg ayuda ..

GLOSARIO


Antepasado
Cualquier conjunto de cambios que pueda ser alcanzado por una cadena ininterrumpida de conjuntos de cambios principales desde un
dado el conjunto de cambios. Más precisamente, los antepasados ​​de un conjunto de cambios pueden definirse mediante dos
propiedades: un padre de un conjunto de cambios es un antepasado, y un padre de un antepasado es
un ancestro. Ver también: 'Descendiente'.

Bookmark
Los marcadores son indicadores de ciertas confirmaciones que se mueven al comprometerse. Ellos son
similar a las etiquetas en que es posible usar nombres de marcadores en todos los lugares donde
Mercurial espera un ID de conjunto de cambios, por ejemplo, con hg actualización. A diferencia de las etiquetas, los marcadores se mueven
junto cuando haces un compromiso.

Los marcadores se pueden renombrar, copiar y eliminar. Los marcadores son locales, a menos que sean
empujado o tirado explícitamente entre repositorios. Empujar y tirar de marcadores
le permite colaborar con otros en una rama sin crear una rama con nombre.

Rama (Sustantivo) Un conjunto de cambios secundario que se ha creado a partir de un padre que no es un encabezado.
Estos se conocen como ramas topológicas, consulte 'Rama, topológica'. Si un
Se nombra una rama topológica, se convierte en una rama con nombre. Si una rama topológica es
sin nombre, se convierte en una rama anónima. Consulte 'Sucursal, anónimo' y 'Sucursal,
nombrada'.

Se pueden crear sucursales cuando los cambios se extraen o se envían a un control remoto
repositorio, ya que estas operaciones pueden crear nuevos jefes. Tenga en cuenta que el término
rama también se puede utilizar informalmente para describir un proceso de desarrollo en el que
cierto desarrollo se realiza independientemente de otro desarrollo. Esto es a veces
hecho explícitamente con una rama con nombre, pero también se puede hacer localmente, usando
marcadores o clones y ramas anónimas.

Ejemplo: "La rama experimental".

(Verbo) La acción de crear un conjunto de cambios secundario que da como resultado que su padre tenga
más de un niño.

Ejemplo: "Voy a bifurcar en X".

Rama, anónimo
Cada vez que se crea un nuevo conjunto de cambios hijo a partir de un padre que no es un jefe y
no se cambia el nombre de la rama, se crea una nueva rama anónima.

Rama, cerrado
Una rama con nombre cuyas cabezas de rama se han cerrado todas.

Rama, tu préstamo estudiantil
La rama asignada a un conjunto de cambios cuando no se ha asignado un nombre previamente.

Rama cabeza
Consulte 'Cabeza, rama'.

Rama, inactivo
Si una rama con nombre no tiene cabezas topológicas, se considera inactiva. Como un
Por ejemplo, una rama de función se vuelve inactiva cuando se fusiona con la rama predeterminada
rama. los hg sucursales El comando muestra ramas inactivas por defecto, aunque pueden
estar escondido con hg sucursales --activo.

NOTA: este concepto está en desuso porque es demasiado implícito. Las ramas deberían ahora
ser cerrado explícitamente usando hg hacer - cerca de la rama cuando ya no se necesitan.

Rama, llamado
Una colección de conjuntos de cambios que tienen el mismo nombre de rama. De forma predeterminada, los hijos de
un conjunto de cambios en una rama con nombre pertenece a la misma rama con nombre. Un niño puede ser
asignado explícitamente a una rama diferente. Ver hg ayuda biblioteca, hg ayuda sucursales y
hg hacer - cerca de la rama para obtener más información sobre la gestión de sucursales.

Las ramas con nombre se pueden considerar como una especie de espacio de nombres, que divide la colección de
conjuntos de cambios que componen el repositorio en una colección de subconjuntos disjuntos. A
La rama nombrada no es necesariamente una rama topológica. Si una nueva rama con nombre es
creado a partir de la cabeza de otra rama con nombre, o la rama predeterminada, pero no
Se agregan más conjuntos de cambios a esa rama anterior, luego a esa rama anterior
será una sucursal solo de nombre.

Rama de estilista
Consulte 'Sugerencia, rama'.

Rama, topológico
Cada vez que se crea un nuevo conjunto de cambios secundario a partir de un padre que no es un jefe, se
Se crea la rama topológica. Si se nombra una rama topológica, se convierte en un nombre
rama. Si no se nombra una rama topológica, se convierte en una rama anónima de la
rama actual, posiblemente predeterminada.

Changelog
Un registro de los conjuntos de cambios en el orden en que se agregaron al repositorio.
Esto incluye detalles como el ID del conjunto de cambios, el autor, el mensaje de confirmación, la fecha y la lista.
de archivos modificados.

Conjunto de cambios
Una instantánea del estado del repositorio utilizado para registrar un cambio.

Conjunto de cambios, sus hijos
Lo contrario del conjunto de cambios padre: si P es un padre de C, entonces C es un hijo de P.
No hay límite para el número de hijos que puede tener un conjunto de cambios.

Conjunto de cambios id
Un hash SHA-1 que identifica de forma única un conjunto de cambios. Puede representarse como
una cadena "larga" de 40 dígitos hexadecimales o una cadena "corta" de 12 dígitos hexadecimales.

Conjunto de cambios, unir
Un conjunto de cambios con dos padres. Esto ocurre cuando se confirma una combinación.

Conjunto de cambios, con el futuro bebé
Una revisión en la que se basa un conjunto de cambios secundario. Específicamente, un conjunto de cambios principal
de un conjunto de cambios C es un conjunto de cambios cuyo nodo precede inmediatamente a C en el DAG.
Los conjuntos de cambios tienen como máximo dos padres.

Pagar ahora
(Sustantivo) El directorio de trabajo se actualiza a una revisión específica. Este uso debe
probablemente debe evitarse cuando sea posible, ya que el conjunto de cambios es mucho más apropiado que
pago en este contexto.

Ejemplo: "Estoy usando Checkout X".

(Verbo) Actualizar el directorio de trabajo a un conjunto de cambios específico. Ver hg ayuda actualización.

Ejemplo: "Voy a comprobar el conjunto de cambios X".

Niño conjunto de cambios
Consulte "Conjunto de cambios, niño".

Cerrar conjunto de cambios
Consulte 'Cabeza, rama cerrada'.

Cerradas biblioteca
Consulte 'Sucursal, cerrada'.

Clon (Sustantivo) Una copia total o parcial de un repositorio. El clon parcial debe estar en el
forma de una revisión y sus antepasados.

Ejemplo: "¿Está actualizado su clon?"

(Verbo) El proceso de crear un clon, usando hg clonar.

Ejemplo: "Voy a clonar el repositorio".

Cerradas biblioteca cabeza
Consulte 'Cabeza, rama cerrada'.

COMPROMÉTASE (Sustantivo) Un sinónimo de conjunto de cambios.

Ejemplo: "¿Se corrigió el error en su confirmación reciente?"

(Verbo) El acto de registrar cambios en un repositorio. Cuando los archivos se confirman en un
directorio de trabajo, Mercurial encuentra las diferencias entre los archivos comprometidos y
su conjunto de cambios padre, creando un nuevo conjunto de cambios en el repositorio.

Ejemplo: "Debería confirmar esos cambios ahora".

Cset Abreviatura común del término conjunto de cambios.

DÍA El repositorio de conjuntos de cambios de un sistema de control de versiones distribuido (DVCS) se puede
descrito como un gráfico acíclico dirigido (DAG), que consta de nodos y bordes, donde
los nodos corresponden a conjuntos de cambios y los bordes implican una relación padre -> hijo. Esta
El gráfico se puede visualizar mediante herramientas gráficas como hg log --grafico. En Mercurial,
el DAG está limitado por el requisito de que los niños tengan como máximo dos padres.


Característica eliminada de la documentación, pero no programada para su eliminación.

Predeterminado biblioteca
Consulte 'Sucursal, predeterminada'.

descendiente
Cualquier conjunto de cambios al que pueda acceder una cadena de conjuntos de cambios secundarios de un determinado
conjunto de cambios. Más precisamente, los descendientes de un conjunto de cambios pueden definirse mediante dos
propiedades: el hijo de un conjunto de cambios es un descendiente y el hijo de un descendiente
es un descendiente. Ver también: 'Ancestro'.

Dif. (Sustantivo) La diferencia entre el contenido y los atributos de los archivos en dos
conjuntos de cambios o un conjunto de cambios y el directorio de trabajo actual. La diferencia es
generalmente se representa en una forma estándar llamada "diff" o "parche". El "git diff"
El formato se utiliza cuando los cambios incluyen copias, cambios de nombre o cambios en el archivo.
atributos, ninguno de los cuales puede ser representado / manejado por los clásicos "diff" y "patch".

Ejemplo: "¿Viste mi corrección en la diferencia?"

(Verbo) Diferenciar dos conjuntos de cambios es la acción de crear una diferencia o un parche.

Ejemplo: "Si diferencia con el conjunto de cambios X, verá lo que quiero decir".

Directorio, trabajando
El directorio de trabajo representa el estado de los archivos rastreados por Mercurial, que
se registrará en la próxima confirmación. El directorio de trabajo corresponde inicialmente a
la instantánea en un conjunto de cambios existente, conocido como el padre del trabajo
directorio. Consulte 'Padre, directorio de trabajo'. El estado puede ser modificado por cambios en
los archivos introducidos manualmente o mediante una combinación. Los metadatos del repositorio existen en el
.hg directorio dentro del directorio de trabajo.

Calado Los conjuntos de cambios en la fase de borrador no se han compartido con los repositorios de publicación y
por lo tanto, se puede cambiar de forma segura mediante extensiones que modifican el historial. Ver hg ayuda fases.

Emparejamiento
Característica que puede cambiar o eliminarse en una fecha posterior.

Gráfico Ver DAG y hg log --grafico.

Cabeza El término 'cabecera' puede usarse para referirse tanto a una cabecera de rama como a una cabecera de repositorio,
dependiendo del contexto. Consulte 'Cabecera, rama' y 'Cabecera, repositorio' para
definiciones.

Los jefes son donde generalmente tiene lugar el desarrollo y son los objetivos habituales de
actualizar y fusionar operaciones.

Cabeza, biblioteca
Un conjunto de cambios sin descendientes en la misma rama con nombre.

Cabeza, cerrado biblioteca
Un conjunto de cambios que marca una cabeza como que ya no es interesante. La cabeza cerrada no es
ya enumerado por hg ¡Aviso!. Una rama se considera cerrada cuando todas sus cabezas están
cerrado y, en consecuencia, no figura en la lista hg sucursales.

Las cabezas cerradas se pueden volver a abrir confirmando un nuevo conjunto de cambios como hijo del
conjunto de cambios que marca una cabeza como cerrada.

Cabeza, repositorio
Un cabezal topológico que no se ha cerrado.

Cabeza, topológico
Un conjunto de cambios sin hijos en el repositorio.

Historia, inmutable
Una vez comprometidos, los conjuntos de cambios no se pueden modificar. Extensiones que parecen cambiar
la historia en realidad crea nuevos conjuntos de cambios que reemplazan a los existentes, y luego destruye
los viejos conjuntos de cambios. Hacerlo en repositorios públicos puede resultar en conjuntos de cambios antiguos
siendo reintroducido en el repositorio.

Historia, reescritura
Los conjuntos de cambios en un repositorio son inmutables. Sin embargo, las extensiones de Mercurial pueden
usarse para alterar el repositorio, generalmente de tal manera que se preserve el conjunto de cambios
contenido.

Inmutable historia
Consulte 'Historia, inmutable'.

ir conjunto de cambios
Consulte 'Conjunto de cambios, combinación'.

Manifiesto
Cada conjunto de cambios tiene un manifiesto, que es la lista de archivos rastreados por el
conjunto de cambios.

ir Se utiliza para agrupar ramas de trabajo divergentes. Cuando actualiza a un conjunto de cambios
y luego fusiona otro conjunto de cambios, trae el historial del último conjunto de cambios
en su directorio de trabajo. Una vez que los conflictos se resuelven (y marcan), esta fusión
se puede confirmar como un conjunto de cambios de fusión, uniendo dos ramas en el DAG.

Llamado biblioteca
Consulte 'Rama, nombrada'.

Nulo conjunto de cambios
El conjunto de cambios vacío. Es el estado padre de los repositorios recién inicializados y
repositorios sin revisión extraída. Por lo tanto, es el padre de los conjuntos de cambios raíz.
y el antepasado efectivo al fusionar conjuntos de cambios no relacionados. Puede ser especificado por
el alias 'nulo' o por el ID del conjunto de cambios '000000000000'.

Padre Consulte 'Conjunto de cambios, padre'.

Padre conjunto de cambios
Consulte 'Conjunto de cambios, padre'.

Padre, trabajando directorio
El padre del directorio de trabajo refleja una revisión virtual que es hija del
conjunto de cambios (o dos conjuntos de cambios con una combinación no confirmada) mostrado por hg padres.. Esto
se cambia con hg actualización. Otros comandos para ver el directorio de trabajo principal son
hg resumen y hg id. Puede ser especificado por el alias ".".

Patch (Sustantivo) El producto de una operación diff.

Ejemplo: "Te he enviado mi parche".

(Verbo) El proceso de usar un archivo de parche para transformar un conjunto de cambios en otro.

Ejemplo: "Deberá parchear esa revisión".

Fase Un estado por conjunto de cambios que rastrea cómo se ha compartido o debería compartirse el conjunto de cambios. Ver
hg ayuda fases.

Público Los conjuntos de cambios en la fase pública se han compartido con los repositorios de publicación y
por tanto, se consideran inmutables. Ver hg ayuda fases.

Jale Una operación en la que conjuntos de cambios en un repositorio remoto que no están en el local
repositorio se llevan al repositorio local. Tenga en cuenta que esta operación sin
Los argumentos especiales solo actualizan el repositorio, no actualizan los archivos en el
directorio de trabajo. Ver hg ayuda recogida .

Push Una operación en la que conjuntos de cambios en un repositorio local que no están en un remoto
repositorio se envían al repositorio remoto. Tenga en cuenta que esta operación solo agrega
conjuntos de cambios que se han confirmado localmente en el repositorio remoto. No comprometido
los cambios no se envían. Ver hg ayuda empuje.

Repositorio
Los metadatos que describen todos los estados registrados de una colección de archivos. Cada grabado
El estado está representado por un conjunto de cambios. Normalmente se encuentra (pero no siempre) un repositorio
existentes .hg subdirectorio de un directorio de trabajo. Cualquier estado registrado se puede recrear
"actualizando" un directorio de trabajo a un conjunto de cambios específico.

Repositorio cabeza
Consulte 'Jefe, repositorio'.

Revisión
Un estado del repositorio en algún momento. Las revisiones anteriores se pueden actualizar
a usando hg actualización. Consulte también 'Número de revisión'; Consulte también 'Conjunto de cambios'.

Revisión número
Este número entero identifica de forma única un conjunto de cambios en un repositorio específico. Eso
representa el orden en el que se agregaron los conjuntos de cambios a un repositorio, comenzando con
número de revisión 0. Tenga en cuenta que el número de revisión puede ser diferente en cada clon de
un repositorio. Para identificar conjuntos de cambios de forma única entre diferentes clones, consulte
'ID de conjunto de cambios'.

Revlog Mecanismo de almacenamiento de historial utilizado por Mercurial. Es una forma de codificación delta, con
revisión completa ocasional de los datos seguida de delta de cada revisión sucesiva. Eso
incluye datos y un índice que apunta a los datos.

Reescritura historia
Consulte 'Historia, reescritura'.

root Un conjunto de cambios que solo tiene el conjunto de cambios nulo como padre. La mayoría de los repositorios tienen
solo un conjunto de cambios de raíz.

Secreto Los conjuntos de cambios en la fase secreta no se pueden compartir mediante push, pull o clon. Ver hg
ayuda fases.

Etiqueta Un nombre alternativo dado a un conjunto de cambios. Las etiquetas se pueden utilizar en todos los lugares donde
Mercurial espera un ID de conjunto de cambios, por ejemplo, con hg actualización. La creación de una etiqueta es
almacenados en el historial y, por lo tanto, se compartirán automáticamente con otros usuarios que usan push
y tirar.

Consejo El conjunto de cambios con el número de revisión más alto. Es el conjunto de cambios más reciente.
agregado en un repositorio.

Propina, biblioteca
El jefe de una rama determinada con el número de revisión más alto. Cuando el nombre de una sucursal es
utilizado como identificador de revisión, se refiere a la punta de la rama. Véase también 'Branch,
cabeza'. Tenga en cuenta que debido a que los números de revisión pueden ser diferentes en diferentes repositorios
clones, la punta de la rama puede ser diferente en diferentes repositorios clonados.

Actualizar (Sustantivo) Otro sinónimo de conjunto de cambios.

Ejemplo: "He enviado una actualización".

(Verbo) Este término se usa generalmente para describir la actualización del estado del trabajo
directorio al de un conjunto de cambios específico. Ver hg ayuda actualización.

Ejemplo: "Deberías actualizar".

Acoplar directorio
Consulte 'Directorio, en funcionamiento'.

Acoplar directorio con el futuro bebé
Consulte 'Padre, directorio de trabajo'.

SINTAXIS PARA MERCURIAL IGNORAR ARCHIVOS


Sinopsis
El sistema Mercurial usa un archivo llamado .hgignorar en el directorio raíz de un repositorio para
controlar su comportamiento cuando busca archivos que no está rastreando actualmente.

Descripción
El directorio de trabajo de un repositorio Mercurial a menudo contendrá archivos que no deberían
ser rastreado por Mercurial. Estos incluyen archivos de respaldo creados por editores y productos de compilación.
creado por compiladores. Estos archivos se pueden ignorar enumerándolos en una .hgignorar archivo en
la raíz del directorio de trabajo. El .hgignorar El archivo debe crearse manualmente. Está
normalmente se pone bajo control de versión, de modo que la configuración se propague a otros
repositorios con push and pull.

Un archivo sin seguimiento se ignora si su ruta es relativa al directorio raíz del repositorio, o cualquier
ruta de prefijo de esa ruta, se compara con cualquier patrón en .hgignorar.

Por ejemplo, digamos que tenemos un archivo sin seguimiento, archivo.c, a a / b / archivo.c dentro de nuestro repositorio.
Mercurial ignorará archivo.c si hay algún patrón en .hgignorar cerillas a / b / archivo.c, a / b or a.

Además, un archivo de configuración de Mercurial puede hacer referencia a un conjunto de
ignorar archivos. Ver el pasar por alto clave de configuración en el [ui] sección de hg ayuda config para
detalles sobre cómo configurar estos archivos.

Para controlar el manejo de Mercurial de los archivos que administra, muchos comandos admiten la -I y
-X opciones; ver hg ayuda y hg ayuda . para obtener más detalles.

Los archivos que ya están rastreados no se ven afectados por .hgignore, incluso si aparecen en
.hgignore. Un archivo X sin seguimiento se puede agregar explícitamente con hg add X, incluso si X fuera
excluido por un patrón en .hgignore.

Sintaxis
Un archivo ignorado es un archivo de texto sin formato que consta de una lista de patrones, con un patrón por
línea. Se omiten las líneas vacías. El # El carácter se trata como un carácter de comentario, y el
\ El carácter se trata como un carácter de escape.

Mercurial admite varias sintaxis de patrones. La sintaxis predeterminada utilizada es estilo Python / Perl
expresiones regulares.

Para cambiar la sintaxis utilizada, use una línea de la siguiente forma:

sintaxis: NAME

donde NOMBRE es uno de los siguientes:

regexp

Expresión regular, sintaxis Python / Perl.

glob

Glob estilo caparazón.

La sintaxis elegida permanece en efecto al analizar todos los patrones que siguen, hasta que otro
la sintaxis está seleccionada.

Ni los patrones glob ni regexp están arraigados. Un patrón de sintaxis glob de la forma *.C seguirá
coincidir con un archivo que termina en .c en cualquier directorio, y un patrón de expresión regular del formulario \ .c $ hará
lo mismo. Para enraizar un patrón de expresiones regulares, inícielo con ^.

Los subdirectorios pueden tener sus propias configuraciones .hgignore agregando
subincluir: ruta / a / subdirectorio / .hgignore a la raíz .hgignorar. Vea hg ayuda . para
detalles sobre subincluir: y incluyen:.

Patrones de nota especificados en distintos .hgignorar siempre están arraigados. Por favor mira hg ayuda
. para obtener más detalles.

Ejemplo
Aquí hay un ejemplo de archivo ignorado.

# use la sintaxis glob.
sintaxis: glob

*.el C
* .pyc
*~

# cambiar a la sintaxis de expresiones regulares.
sintaxis: regexp
^ \. pc /

CONFIGURAR HGWEB


El servidor web interno de Mercurial, hgweb, puede servir a un único repositorio o a un árbol de
repositorios. En el segundo caso, las rutas del repositorio y las opciones globales se pueden definir utilizando
un archivo de configuración dedicado común a hg ayudar , hgweb.wsgi, hgweb.cgi y hgweb.fcgi.

Este archivo utiliza la misma sintaxis que otros archivos de configuración de Mercurial, pero solo reconoce
las siguientes secciones:

· Web

· caminos

· Colecciones

El web las opciones se describen detalladamente en hg ayuda config.

El caminos La sección asigna rutas de URL a rutas de repositorios en el sistema de archivos. hgweb lo hará
no exponer el sistema de archivos directamente: solo se pueden publicar los repositorios de Mercurial y solo
según la configuración.

El lado izquierdo es la ruta en la URL. Tenga en cuenta que hgweb reserva subrutas como acelerar or
presentar, intente usar nombres diferentes para los repositorios anidados para evitar efectos confusos.

El lado derecho es la ruta en el sistema de archivos. Si la ruta especificada termina con * or **
el sistema de archivos se buscará de forma recursiva en busca de repositorios por debajo de ese punto. Con * it
no recurrirá a los repositorios que encuentre (a excepción de .hg / parches). Con ** va a
también busque dentro de los directorios de trabajo del repositorio y posiblemente encuentre subrepositorios.

En este ejemplo:

[caminos]
/ proyectos / a = / srv / tmprepos / a
/ proyectos / b = c: / repos / b
/ = / srv / repos / *
/ usuario / bob = / inicio / bob / repos / **

· Las dos primeras entradas hacen que dos repositorios en diferentes directorios aparezcan bajo el
mismo directorio en la interfaz web

· La tercera entrada publicará todos los repositorios de Mercurial que se encuentran en / srv / repos /, Para
instancia el repositorio / srv / repos / quux / aparecerá como http://server/quux/

· La cuarta entrada publicará tanto http://server/user/bob/quux/ y
http://server/user/bob/quux/testsubrepo/

El colecciones La sección está obsoleta y ha sido reemplazada por caminos.

URL y Algunos Argumentos
Las URL de cada repositorio tienen el formato / {comando} [/ {argumentos}] donde {mando}
representa el nombre de un comando o controlador y {argumentos} representa cualquier número de
parámetros de URL adicionales a ese comando.

El servidor web tiene un estilo predeterminado asociado. Los estilos se asignan a una colección de nombres
plantillas. Cada plantilla se utiliza para representar un dato específico, como un conjunto de cambios.
o diff.

El estilo de la solicitud actual se puede sobrescribir de dos formas. Primero, si {mando}
contiene un guión-), el texto antes del guion define el estilo. Por ejemplo,
/ atom-log rendirá el log controlador de comando con el átomo estilo. La segunda forma de configurar
el estilo es con el papa argumento de cadena de consulta. Por ejemplo, / log? style = atom.
Se prefiere el parámetro de URL con guiones.

No todas las plantillas están disponibles para todos los estilos. Intentar usar un estilo que no
Tener todas las plantillas definidas puede resultar en un error al representar la página.

Muchos comandos toman un {revisión} Parámetro de URL. Esto define el conjunto de cambios sobre el que operar.
Esto se especifica comúnmente como la abreviatura hexadecimal corta de 12 dígitos para los 40
Identificador de revisión único de carácter. Sin embargo, cualquier valor descrito por hg ayuda las revisiones
normalmente funciona.

Comandos y URL
Están disponibles los siguientes comandos web y sus URL:

/ annotate / {revision} / {path}
Muestra información del conjunto de cambios para cada línea de un archivo.

El anotar archivo se renderiza la plantilla.

/archivo/{revisión}.{formato}[/{ruta}]
Obtenga un archivo de contenido del repositorio.

El contenido y el tipo del archivo se definen mediante un parámetro de ruta de URL. formato son los
extensión de archivo del tipo de archivo que se va a generar. p.ej Código Postal or tar.bz2. No todo el archivo
Los tipos pueden estar permitidos por la configuración de su servidor.

La opción camino El parámetro de URL controla el contenido que se incluye en el archivo. Si se omite,
todos los archivos de la revisión especificada están presentes en el archivo. Si se incluye, solo el
El archivo especificado o el contenido del directorio especificado se incluirán en el archivo.

No se utiliza ninguna plantilla para este controlador. Se genera contenido binario sin procesar.

/ marcadores
Muestra información sobre marcadores.

No se aceptan argumentos.

El marcadores se renderiza la plantilla.

/sucursales
Mostrar información sobre sucursales.

Todas las ramas conocidas están contenidas en la salida, incluso las ramas cerradas.

No se aceptan argumentos.

El sucursales se renderiza la plantilla.

/ changelog [/ {revision}]
Muestra información sobre varios conjuntos de cambios.

Si el opcional revisión El argumento de URL está ausente, la información sobre todos los conjuntos de cambios comienza
at de estilista será renderizado. Si el revisión El argumento está presente, se mostrarán los conjuntos de cambios.
a partir de la revisión especificada.

If revisión está ausente, el acelerar Se puede definir un argumento de cadena de consulta. Esto realizará una
buscar conjuntos de cambios.

El argumento para acelerar puede ser una revisión única, un conjunto de revisiones o una palabra clave literal para
buscar en los datos del conjunto de cambios (equivalente a hg log -k).

El recuento El argumento de la cadena de consulta define el número máximo de conjuntos de cambios para representar.

Para no búsquedas, el cambios Se renderizará la plantilla.

/ changeset [/ {revision}]
Muestra información sobre un único conjunto de cambios.

Un argumento de ruta de URL es el identificador de conjunto de cambios que se mostrará. Ver hg ayuda las revisiones para
valores posibles. Si no está definido, el de estilista Se mostrará el conjunto de cambios.

El conjunto de cambios se renderiza la plantilla. Contenido del cambio de etiqueta, conjunto de cambiosmarcador,
enlace de nodo de archivo, archivonolink, y las muchas plantillas relacionadas con las diferencias pueden usarse para
producir la salida.

/ comparación / {revisión} / {ruta}
Muestre una comparación entre la versión antigua y la nueva de un archivo a partir de los cambios realizados en un
revisión particular.

Esto es similar a la diff manipulador. Sin embargo, este formulario presenta una división o una al lado de la otra.
diff en lugar de un diff unificado.

El contexto El argumento de la cadena de consulta se puede utilizar para controlar las líneas de contexto en el diff.

El comparación de archivos se renderiza la plantilla.

/ diff / {revisión} / {ruta}
Muestre cómo cambió un archivo en una confirmación en particular.

El archivado se renderiza la plantilla.

Este controlador está registrado tanto en el / diff y / Flediff caminos. / diff se utiliza en
código moderno.

/ archivo / {revisión} [/ {ruta}]
Muestra información sobre un directorio o archivo en el repositorio.

Información sobre el camino dado como parámetro de URL.

If camino es un directorio, se mostrará información sobre las entradas en ese directorio.
Esta forma es equivalente a la manifiesto manipulador.

If camino es un archivo, la información sobre ese archivo se mostrará a través del revisión de archivo
plantilla.

If camino no está definido, se mostrará información sobre el directorio raíz.

/ diff / {revisión} / {ruta}
Muestre cómo cambió un archivo en una confirmación en particular.

El archivado se renderiza la plantilla.

Este controlador está registrado tanto en el / diff y / Flediff caminos. / diff se utiliza en
código moderno.

/ filelog / {revisión} / {ruta}
Muestra información sobre el historial de un archivo en el repositorio.

El recuento El argumento de la cadena de consulta se puede definir para controlar el número máximo de entradas.
mostrar.

El registro de archivos Se renderizará la plantilla.

/ graph [/ {revision}]
Muestra información sobre la topología gráfica del repositorio.

La información proporcionada por este controlador se puede utilizar para crear representaciones visuales de
topología del repositorio.

El revisión El parámetro URL controla el conjunto de cambios inicial.

El recuento El argumento de la cadena de consulta puede definir el número de conjuntos de cambios para mostrar información.
para.

Este controlador representará el gráfica plantilla.

/Tópico de ayuda}]
Renderizar documentación de ayuda.

Este comando web es aproximadamente equivalente a hg ayuda. Si un tema está definido, ese tema de ayuda
será renderizado. De lo contrario, se generará un índice de los temas de ayuda disponibles.

El ayuda La plantilla se procesará al solicitar ayuda para un tema. temas de ayuda se mostrarán
representado para el índice de temas de ayuda.

/ log [/ {revisión} [/ {ruta}]]
Muestra el historial del repositorio o del archivo.

Para URL del formulario / log / {revision}, una lista de conjuntos de cambios que comienzan en el especificado
Se muestra el identificador del conjunto de cambios. Si {revisión} no está definido, el valor predeterminado es de estilista. Esta forma
es equivalente a la cambios manipulador.

Para URL del formulario / log / {revision} / {file}, el historial de un archivo específico será
mostrado. Esta forma es equivalente a la registro de archivos manipulador.

/ manifest [/ {revision} [/ {ruta}]]
Muestra información sobre un directorio.

Si se omiten los argumentos de la ruta de URL, la información sobre el directorio raíz de la de estilista
Se mostrará el conjunto de cambios.

Debido a que este controlador solo puede mostrar información de directorios, se recomienda utilizar
las presentar handler en su lugar, ya que puede manejar tanto directorios como archivos.

El manifiesto Se renderizará la plantilla para este controlador.

/ changeset [/ {revision}]
Muestra información sobre un único conjunto de cambios.

Un argumento de ruta de URL es el identificador de conjunto de cambios que se mostrará. Ver hg ayuda las revisiones para
valores posibles. Si no está definido, el de estilista Se mostrará el conjunto de cambios.

El conjunto de cambios se renderiza la plantilla. Contenido del cambio de etiqueta, conjunto de cambiosmarcador,
enlace de nodo de archivo, archivonolink, y las muchas plantillas relacionadas con las diferencias pueden usarse para
producir la salida.

/registro breve
Muestra información básica sobre un conjunto de conjuntos de cambios.

Este acepta los mismos parámetros que el cambios manipulador. La única diferencia es el
bitácora se representará la plantilla en lugar de la cambios plantilla.

/resumen
Muestra un resumen del estado del repositorio.

La información sobre los últimos conjuntos de cambios, marcadores, etiquetas y ramas es capturada por este
manipulador.

El resumen se renderiza la plantilla.

/ etiquetas
Mostrar información sobre las etiquetas.

No se aceptan argumentos.

El etiquetas se renderiza la plantilla.

TÉCNICA IMPLEMENTACIÓN TEMAS


manojos
contenedor para el intercambio de datos del repositorio

grupos de cambio
representación de datos de revlog

Revlogs
mecanismo de almacenamiento de revisión

UNIR HERRAMIENTAS


Para fusionar archivos, Mercurial utiliza herramientas de fusión.

Una herramienta de combinación combina dos versiones diferentes de un archivo en un archivo combinado. Las herramientas de combinación son
dados los dos archivos y el mayor ancestro común de las dos versiones de archivo, por lo que pueden
determinar los cambios realizados en ambas ramas.

Las herramientas de combinación se utilizan tanto para hg Resolvemos, hg unir, hg actualización, hg retirarse y en varios
extensiones.

Por lo general, la herramienta de combinación intenta reconciliar automáticamente los archivos combinando todos
cambios no superpuestos que ocurrieron por separado en las dos evoluciones diferentes de la
mismo archivo base inicial. Además, algunos programas de combinación interactivos facilitan la
resuelva manualmente las fusiones en conflicto, ya sea de forma gráfica o insertando algunos
marcadores de conflicto. Mercurial no incluye ningún programa de combinación interactivo, sino que se basa en
herramientas externas para eso.

Disponible unir
Las herramientas de combinación externas y sus propiedades se configuran en la configuración de herramientas de combinación
sección - ver hgrc(5) - pero a menudo solo pueden ser nombrados por su ejecutable.

Una herramienta de combinación generalmente se puede usar si su ejecutable se puede encontrar en el sistema y si
puede manejar la fusión. El ejecutable se encuentra si es un ejecutable absoluto o relativo
ruta o el nombre de una aplicación en la ruta de búsqueda de ejecutables. Se supone que la herramienta
ser capaz de manejar la combinación si puede manejar enlaces simbólicos si el archivo es un enlace simbólico, si puede
manejar archivos binarios si el archivo es binario, y si una GUI está disponible si la herramienta requiere
una GUI.

Hay algunas herramientas de combinación interna que se pueden utilizar. Las herramientas de combinación interna son:

:vertedero

Crea tres versiones de los archivos para fusionar, que contienen el contenido de local,
otro y básico. Estos archivos se pueden usar para realizar una fusión manualmente. Si el
el archivo a fusionar se llama un.txt, estos archivos se denominarán en consecuencia
a.txt.local, a.txt.otro y una.txt.base y se colocarán en el mismo
directorio como un.txt.

:fallar

En lugar de intentar fusionar archivos que se modificaron en ambas ramas, marca
ellos como no resueltos. El comando resolve debe usarse para resolver estos conflictos.

:local

Utiliza la versión local de los archivos como la versión fusionada.

:unir

Utiliza el algoritmo de fusión simple interno no interactivo para fusionar archivos. Va a
falle si hay algún conflicto y deje marcadores en el archivo parcialmente fusionado.
Los marcadores tendrán dos secciones, una para cada lado de la fusión.

:merge-local

Me gusta :merge, pero resuelve todos los conflictos de forma no interactiva a favor del local
cambios.

:fusionar-otro

Como :merge, pero resuelve todos los conflictos de forma no interactiva a favor del otro
cambios.

: fusionar3

Utiliza el algoritmo de fusión simple interno no interactivo para fusionar archivos. Va a
falle si hay algún conflicto y deje marcadores en el archivo parcialmente fusionado.
El marcador tendrá tres secciones, una de cada lado de la unión y otra para el
contenido básico.

:otro

Utiliza la otra versión de los archivos como la versión fusionada.

:inmediato

Pregunta al usuario cuál de la versión local o la otra para mantener como la fusionada
versión.

:etiquetar

Utiliza el algoritmo de combinación de etiquetas interno (experimental).

:Unión

Utiliza el algoritmo de fusión simple interno no interactivo para fusionar archivos. Va a
utilice los lados izquierdo y derecho para las regiones en conflicto. No se insertan marcadores.

Las herramientas internas están siempre disponibles y no requieren una GUI, pero por defecto no
manejar enlaces simbólicos o archivos binarios.

La elección a unir del IRS
Mercurial usa estas reglas al decidir qué herramienta de combinación usar:

1. Si se ha especificado una herramienta con la opción --tool para fusionar o resolver, se utiliza.
Si es el nombre de una herramienta en la configuración de herramientas de fusión, su configuración es
usado. De lo contrario, la herramienta especificada debe ser ejecutable por el shell.

2. Si el FUSIÓN variable de entorno está presente, su valor se utiliza y debe ser
ejecutable por el shell.

3. Si el nombre de archivo del archivo que se fusionará coincide con cualquiera de los patrones en el
sección de configuración de patrones de combinación, la primera herramienta de combinación utilizable correspondiente a un
se utiliza un patrón coincidente. Aquí, las capacidades binarias de la herramienta de combinación no están
considerado.

4. Si se establece ui.merge, se considerará a continuación. Si el valor no es el nombre de un
herramienta configurada, se utiliza el valor especificado y debe ser ejecutable por el shell.
De lo contrario, se utiliza la herramienta nombrada si es utilizable.

5. Si alguna herramienta de combinación utilizable está presente en la sección de configuración de herramientas de combinación, la
Se utiliza la prioridad más alta.

6. Si un programa llamado fusionar se puede encontrar en el sistema, se usa, pero lo hará
por defecto no se puede usar para enlaces simbólicos y archivos binarios.

7. Si el archivo que se fusionará no es binario y no es un enlace simbólico, entonces interno :unir is
usado.

8. La fusión del archivo falla y debe resolverse antes de la confirmación.

Nota Después de seleccionar un programa de fusión, Mercurial intentará por defecto fusionar el
primero usando un algoritmo de combinación simple. Sólo si no tiene éxito debido a
cambios en conflicto Mercurial realmente ejecutará el programa de fusión. Ya sea para
usar el algoritmo de combinación simple primero se puede controlar mediante la configuración previa a la combinación de
la herramienta de fusión. Premerge está habilitado de forma predeterminada a menos que el archivo sea binario o un
enlace simbólico.

Consulte las secciones merge-tools y ui de hgrc(5) para detalles sobre la configuración de merge
herramientas.

ESPECIFICANDO MÚLTIPLE REVISIONES


Cuando Mercurial acepte más de una revisión, podrán ser especificadas individualmente, o
proporcionado como un rango topológicamente continuo, separado por el carácter ":".

La sintaxis de la notación de rango es [BEGIN]:[END], donde BEGIN y END son revisión
identificadores Tanto BEGIN como END son opcionales. Si no se especifica BEGIN, el valor predeterminado es
número de revisión 0. Si no se especifica END, por defecto es la punta. El rango ":" por lo tanto
significa "todas las revisiones".

Si BEGIN es mayor que END, las revisiones se tratan en orden inverso.

Un rango actúa como un intervalo cerrado. Esto significa que un rango de 3:5 da 3, 4 y 5.
De manera similar, un rango de 9:6 da 9, 8, 7 y 6.

ARCHIVO NOMBRE PATRONES


Mercurial acepta varias notaciones para identificar uno o más archivos a la vez.

De forma predeterminada, Mercurial trata los nombres de archivo como patrones globales extendidos al estilo de una concha.

Las notaciones de patrones alternativos deben especificarse explícitamente.

Patrones de notas especificados en .hgignorar no están rooteados. Por favor mira hg ayuda ignorar para
Detalles.

Para usar un nombre de ruta simple sin ninguna coincidencia de patrones, comience con camino:. estos camino
los nombres deben coincidir completamente a partir de la raíz del repositorio actual.

Para usar un glob extendido, comience un nombre con globo:. Los globos están enraizados en la corriente.
directorio; un globo como *.C solo coincidirá con los archivos en el directorio actual que terminan con
.c.

Las extensiones de sintaxis glob admitidas son ** para hacer coincidir cualquier cadena a través de separadores de ruta y
{a, b} para significar "a o b".

Para usar una expresión regular de Perl/Python, comience un nombre con re:. Coincidencia de patrones de expresiones regulares
está anclado en la raíz del repositorio.

Para leer patrones de nombres de un archivo, utilice archivo de lista: or archivo de lista0:. Este último espera nulo
patrones delimitados mientras que el primero espera saltos de línea. Cada cadena leída del archivo es
en sí mismo tratado como un patrón de archivo.

Para leer un conjunto de patrones de un archivo, use incluyen: or subincluir:. incluyen: usará todo
los patrones del archivo dado y tratarlos como si se hubieran pasado manualmente.
subincluir: solo aplicará los patrones contra los archivos que están bajo la subinclusión
directorio del archivo. Ver hg ayuda ignorar para obtener detalles sobre el formato de estos archivos.

Todos los patrones, excepto globo: especificado en la línea de comando (no para -I or -X opciones), puede
coincidir también con directorios: los archivos en directorios coincidentes se tratan como coincidentes.

Ejemplos claros:

ruta:foo/bar una barra de nombre en un directorio llamado foo en la raíz
del repositorio
ruta:ruta:nombre un archivo o directorio llamado "ruta:nombre"

Ejemplos globales:

glob:*.c cualquier nombre que termine en ".c" en el directorio actual
*.c cualquier nombre que termine en ".c" en el directorio actual
**.c cualquier nombre que termine en ".c" en cualquier subdirectorio del
directorio actual incluyéndose a sí mismo.
foo/*.c cualquier nombre que termine en ".c" en el directorio foo
foo/**.c cualquier nombre que termine en ".c" en cualquier subdirectorio de foo
incluyéndose a sí mismo.

Ejemplos de expresiones regulares:

re:.*\.c$ cualquier nombre que termine en ".c", en cualquier parte del repositorio

Ejemplos de archivos:

listfile:list.txt lee la lista de list.txt con un patrón de archivo por línea
listfile0:list.txt lee la lista de list.txt con delimitadores de bytes nulos

Vea también hg ayuda conjuntos de archivos.

Incluye ejemplos:

include:path/to/mypatternfile lee los patrones que se aplicarán a todas las rutas
subinclude:path/to/subignorefile lee patrones específicamente para rutas en el
subdirectorio

DE TRABAJO HE TRABAJADO ETAPAS


¿ en ¿etapas?
Las fases son un sistema para rastrear qué conjuntos de cambios se han compartido o deberían compartirse. Esta
ayuda a prevenir errores comunes al modificar el historial (por ejemplo, con mq o rebase
extensiones).

Cada conjunto de cambios en un repositorio se encuentra en una de las siguientes fases:

· público: el conjunto de cambios es visible en un servidor público

· borrador: el conjunto de cambios aún no se ha publicado

· secreto: el conjunto de cambios no se debe empujar, extraer ni clonar

Estas fases están ordenadas (public < draft < secret) y ningún conjunto de cambios puede estar en un nivel inferior.
fase que sus antepasados. Por ejemplo, si un conjunto de cambios es público, todos sus ancestros son
también público. Por último, las fases del conjunto de cambios solo deben cambiarse hacia la fase pública.

Cómo en fases ¿administrado?
En su mayor parte, las fases deberían funcionar de forma transparente. Por defecto, un conjunto de cambios se crea en
la fase de borrador y se mueve a la fase pública cuando se empuja a otra
repositorio.

Una vez que los conjuntos de cambios se vuelven públicos, las extensiones como mq y rebase se negarán a operar en
para evitar la creación de conjuntos de cambios duplicados. Las fases también se pueden manipular manualmente.
con el hg fase comando si es necesario. Ver hg ayuda -v fase por ejemplo.

Para que sus confirmaciones sean secretas por defecto, ponga esto en su archivo de configuración:

[etapas]
nueva confirmación = secreto

Fases y servidores
Normalmente, todos los servidores son publicación por defecto. Esto significa:

- todos los borradores de conjuntos de cambios que se extraen o clonan aparecen en fase
público en el cliente

- todos los borradores de conjuntos de cambios que se envían aparecen como públicos en ambos
cliente y servidor

- los conjuntos de cambios secretos no se empujan, extraen ni clonan

Nota Extraer un borrador de conjunto de cambios de un servidor de publicación no lo marca como público en
el lado del servidor debido a la naturaleza de solo lectura de pull.

A veces, puede ser conveniente impulsar y extraer conjuntos de cambios en la fase de borrador para compartir
trabajo inacabado. Esto se puede hacer configurando un repositorio para deshabilitar la publicación en su
archivo de configuración:

[etapas]
publicar = falso

See hg ayuda config para obtener más información sobre los archivos de configuración.

Nota Los servidores que ejecutan versiones anteriores de Mercurial se tratan como publicaciones.

Nota Los conjuntos de cambios en fase secreta no se intercambian con el servidor. Esto se aplica a sus
contenido: nombres de archivos, contenidos de archivos y metadatos de conjuntos de cambios. Por razones técnicas,
el identificador (por ejemplo, d825e4025e39) del conjunto de cambios secreto puede comunicarse a
el servidor.

Ejemplos
· enumerar los conjuntos de cambios en la fase de borrador o secreta:

hg log -r "no público()"

· cambia todos los conjuntos de cambios secretos a borrador:

hg fase --borrador "secreto()"

· mover a la fuerza el conjunto de cambios actual y los descendientes de público a borrador:

hg fase --fuerza --draft .

· mostrar una lista de revisiones y fases del conjunto de cambios:

hg log --template "{rev} {fase}\n"

· resincronizar borradores de conjuntos de cambios relativos a un repositorio remoto:

hg fase -fd "saliente (URL)"

See hg ayuda fase para obtener más información sobre la manipulación manual de fases.

ESPECIFICANDO SOLTERO REVISIONES


Mercurial admite varias formas de especificar revisiones individuales.

Un entero simple se trata como un número de revisión. Los enteros negativos se tratan como
desplazamientos secuenciales desde la punta, donde -1 indica la punta, -2 indica la revisión anterior
hasta la punta, etc.

Una cadena hexadecimal de 40 dígitos se trata como un identificador de revisión único.

Una cadena hexadecimal de menos de 40 caracteres se trata como una revisión única
identificador y se denomina identificador abreviado. Un identificador abreviado es sólo
válido si es el prefijo de exactamente un identificador completo.

Cualquier otra cadena se trata como un marcador, una etiqueta o un nombre de rama. Un marcapáginas es un móvil.
puntero a una revisión. Una etiqueta es un nombre permanente asociado con una revisión. Un nombre de sucursal
denota la punta de la rama abierta más alta de esa rama, o si están todas cerradas, la
cabeza más cerrada de la rama. Los nombres de marcadores, etiquetas y sucursales no deben contener el
":" personaje.

El nombre reservado "consejo" siempre identifica la revisión más reciente.

El nombre reservado "null" indica la revisión nula. Esta es la revisión de un vacío
repositorio, y el padre de la revisión 0.

El nombre reservado "." indica el padre del directorio de trabajo. Si no hay un directorio de trabajo
desprotegido, es equivalente a nulo. Si hay una combinación no confirmada en curso, "." es el
revisión del primer padre.

ESPECIFICANDO REVISIÓN CONJUNTOS


Mercurial admite un lenguaje funcional para seleccionar un conjunto de revisiones.

El lenguaje admite una serie de predicados que se unen mediante operadores infijos.
Los paréntesis se pueden utilizar para agrupar.

Los identificadores, como los nombres de las sucursales, pueden necesitar comillas simples o dobles si
contienen caracteres como - o si coinciden con uno de los predicados predefinidos.

Se pueden usar caracteres especiales en identificadores entre comillas escapándolos, por ejemplo, \n is
interpretado como una nueva línea. Para evitar que se interpreten, las cadenas pueden tener el prefijo
r, p.ej r '...'.

Hay un operador de prefijo único:

no x

Conjuntos de cambios no en x. forma corta es ! x.

Estos son los operadores infijos admitidos:

x :: y

Un rango DAG, es decir, todos los conjuntos de cambios que son descendientes de x y ancestros de y,
incluyendo x e y ellos mismos. Si se omite el primer punto final, esto es equivalente
a antepasados ​​(y), si se omite el segundo es equivalente a descendientes(x).

Una sintaxis alternativa es x..y.

x: y

Todos los conjuntos de cambios con números de revisión entre x e y, ambos inclusive. Cualquiera
endpoint se puede omitir, por defecto es 0 y propina.

x y y

La intersección de conjuntos de cambios en x e y. forma corta es x & y.

x or y

La unión de conjuntos de cambios en x e y. Hay dos formas cortas alternativas: x | y
y x + y.

x - y

Conjuntos de cambios en x pero no en y.

x ^ n

El enésimo padre de x, n == 0, 1 o 2. Para n == 0, x; para n == 1, el primer padre
de cada conjunto de cambios en x; para n == 2, el segundo padre del conjunto de cambios en x.

x~n

El enésimo primer antepasado de x; x~0 es x; x~3 is x^^^.

Hay un solo operador de sufijo:

x^

Equivalente a x ^ 1, el primer padre de cada conjunto de cambios en x.

Se admiten los siguientes predicados:

agrega (patrón)

Conjuntos de cambios que agregan un patrón de coincidencia de archivos.

El patrón sin tipo explícito como globo: se espera que sea relativo a la
directorio actual y hacer coincidir con un archivo o un directorio.

todas()

Todos los conjuntos de cambios, lo mismo que 0: propina.

antepasado(*conjunto de cambios)

Un mayor ancestro común de los conjuntos de cambios.

Acepta 0 o más conjuntos de cambios. Devolverá una lista vacía cuando no se pasen argumentos.
El mayor ancestro común de un solo conjunto de cambios es ese conjunto de cambios.

ancestros (conjunto)

Conjuntos de cambios que son ancestros de un conjunto de cambios en el conjunto.

autor (cadena)

Alias ​​para usuario (cadena).

bisecar (cadena)

Conjuntos de cambios marcados en el estado de bisección especificado:

· candidato, malos, omitir: csets marcados explícitamente como buenos/malos/saltar

· bienes, males : csets topológicamente buenos/malos

· distancia : csets tomando parte en la bisección

· podado : csets que son buenos, malos u omitidos

· no probado : csets cuyo destino aún se desconoce

· ignorado : csets ignorados debido a la topología DAG

· corriente : el cset actualmente está siendo bisecado

marcador ([nombre])

El marcador nombrado o todos los marcadores.

If nombre comienza con re:, el resto del nombre se trata como regular
expresión. Para hacer coincidir un marcador que en realidad comienza con re:, utiliza el prefijo
literal:.

rama (cadena or set)

Todos los conjuntos de cambios pertenecientes a la rama dada o las ramas de la dada
conjuntos de cambios.

If cadena comienza con re:, el resto del nombre se trata como regular
expresión. Para hacer coincidir una rama que en realidad comienza con re:, utiliza el prefijo
literal:.

punto de ramificación()

Conjuntos de cambios con más de un hijo.

golpeado ()

Conjuntos de cambios mutables marcados como sucesores de conjuntos de cambios públicos.

Solo los conjuntos de cambios no públicos y no obsoletos pueden ser golpeado.

manojo()

Conjuntos de cambios en el paquete.

El paquete debe especificarse mediante la opción -R.

niños (conjunto)

Conjuntos de cambios secundarios de conjuntos de cambios en el conjunto.

cerrado()

El conjunto de cambios está cerrado.

contiene (patrón)

El manifiesto de la revisión contiene un patrón de coincidencia de archivos (pero es posible que no lo modifique).
See hg ayuda . para obtener información sobre patrones de archivo.

El patrón sin tipo explícito como globo: se espera que sea relativo a la
directorio actual y compararlo con un archivo exactamente para mayor eficiencia.

convertido([id])

Conjuntos de cambios convertidos a partir del identificador dado en el repositorio anterior, si está presente, o
todos los conjuntos de cambios convertidos si no se especifica ningún identificador.

fecha (intervalo)

Conjuntos de cambios dentro del intervalo, consulte hg ayuda fechas.

desc(cadena)

Buscar mensaje de confirmación para la cadena. La coincidencia no distingue entre mayúsculas y minúsculas.

descendientes (conjunto)

Conjuntos de cambios que son descendientes de conjuntos de cambios en el conjunto.

destino([establecer])

Conjuntos de cambios creados por una operación de injerto, trasplante o rebase, con la
dadas las revisiones especificadas como fuente. Omitir el conjunto opcional es lo mismo que
pasando todo().

divergente()

Sucesores finales de conjuntos de cambios con un conjunto alternativo de sucesores finales.

sequía()

Conjunto de cambios en fase de borrador.

extinto()

Conjuntos de cambios obsoletos solo con descendientes obsoletos.

extra(etiqueta, [valor])

Conjuntos de cambios con la etiqueta dada en los metadatos adicionales, con el opcional dado
.

If propuesta de comienza con re:, el resto del valor se trata como regular
expresión. Para hacer coincidir un valor que en realidad comienza con re:, utiliza el prefijo
literal:.

archivo (patrón)

Conjuntos de cambios que afectan a los archivos que coinciden con el patrón.

Para un resultado más rápido pero menos preciso, considere usar archivolog() preferiblemente.

Este predicado utiliza globo: como el tipo de patrón predeterminado.

registro de archivos (patrón)

Conjuntos de cambios conectados al registro de archivos especificado.

Por razones de rendimiento, solo visita las revisiones mencionadas en el registro de archivos a nivel de archivo,
en lugar de filtrar a través de todos los conjuntos de cambios (mucho más rápido, pero no incluye
elimina o duplica cambios). Para obtener un resultado más lento y preciso, utilice expediente().

El patrón sin tipo explícito como globo: se espera que sea relativo a la
directorio actual y compararlo con un archivo exactamente para mayor eficiencia.

Si algún linkrev apunta a revisiones filtradas por la vista de informe actual, trabajaremos
a su alrededor para devolver un valor no filtrado.

primer set, [norte])

Un alias para limit().

seguir ([patrón])

Un alias para ::. (ancestros del primer padre del directorio de trabajo). Si patrón
se especifica, se siguen las historias de los archivos que coinciden con el patrón dado, incluyendo
copias.

grep (expresión regular)

Me gusta palabra clave (cadena) pero acepta una expresión regular. Usar grep(r'...') para asegurar un escape especial
los caracteres se manejan correctamente. a diferencia de palabra clave (cadena), el partido es
distingue mayúsculas y minúsculas.

cabeza()

Changeset es un encabezado de rama con nombre.

cabezas (conjunto)

Miembros del conjunto sin hijos en el conjunto.

oculto()

Conjuntos de cambios ocultos.

identificación (cadena)

Revisión especificada de forma no ambigua por el prefijo de cadena hexadecimal proporcionado.

palabra clave (cadena)

Busque el mensaje de confirmación, el nombre de usuario y los nombres de los archivos modificados para la cadena. El partido
no distingue entre mayúsculas y minúsculas.

último(establecer, [norte])

Últimos n miembros del conjunto, por defecto es 1.

límite(establecer[, norte[, compensar]])

Primeros n miembros del conjunto, predeterminados en 1, comenzando desde el desplazamiento.

coincidencia (revisión [, campo])

Conjuntos de cambios en los que un conjunto dado de campos coincide con el conjunto de campos en el seleccionado
revisión o conjunto.

Para hacer coincidir más de un campo, pase la lista de campos para hacer coincidir separados por espacios
(p.ej autor descripción).

Los campos válidos son la mayoría de los campos de revisión regulares y algunos campos especiales.

Los campos de revisión regulares son descripción, autor, biblioteca, datos, archivos, fase,
padres., subestado, usuario y diff. Tenga en cuenta que autor y usuario son sinónimos. diff
se refiere al contenido de la revisión. Dos revisiones que coinciden con sus diff También se
coincidir con su archivos.

Los campos especiales son resumen y metadatos: resumen coincide con la primera línea del
descripción. metadatos es equivalente a emparejar descripción usuario datos (es decir, eso
coincide con los principales campos de metadatos).

metadatos es el campo predeterminado que se utiliza cuando no se especifica ningún campo. Usted puede
coincidir con más de un campo a la vez.

máximo (establecer)

Conjunto de cambios con el número de revisión más alto del conjunto.

unir()

Changeset es un conjunto de cambios combinado.

min(establecer)

Conjunto de cambios con el número de revisión más bajo del conjunto.

modifica (patrón)

Conjuntos de cambios que modifican archivos emparejados por patrón.

El patrón sin tipo explícito como globo: se espera que sea relativo a la
directorio actual y hacer coincidir con un archivo o un directorio.

nombrado (espacio de nombres)

Los conjuntos de cambios en un espacio de nombres determinado.

If espacio de nombres comienza con re:, el resto de la cadena se trata como regular
expresión. Para hacer coincidir un espacio de nombres que en realidad comienza con re:, utiliza el prefijo
literal:.

obsoleto()

Conjunto de cambios mutable con una versión más nueva.

solo (establecer, [colocar])

Conjuntos de cambios que son ancestros del primer conjunto que no son ancestros de ningún otro
cabeza en el repositorio. Si se especifica un segundo conjunto, el resultado son antepasados ​​del
primer conjunto que no son ancestros del segundo conjunto (es decir: :: - :: ).

origen([conjunto])

Conjuntos de cambios que se especificaron como fuente para los injertos, trasplantes o rebases
que creó las revisiones dadas. Omitir el conjunto opcional es lo mismo que pasar
todo(). Si un conjunto de cambios creado por estas operaciones se especifica como fuente
para una de estas operaciones, solo el conjunto de cambios fuente para la primera operación es
seleccionado.

saliente ([ruta])

Conjuntos de cambios no encontrados en el repositorio de destino especificado, o el envío predeterminado
ubicación.

p1([conjunto])

Primer padre de los conjuntos de cambios en el conjunto, o el directorio de trabajo.

p2([conjunto])

Segundo padre de los conjuntos de cambios en el conjunto, o el directorio de trabajo.

padres ([conjunto])

El conjunto de todos los padres para todos los conjuntos de cambios en el conjunto, o el directorio de trabajo.

presente (conjunto)

Un conjunto vacío, si no se encuentra ninguna revisión en el conjunto; de lo contrario, todas las revisiones en conjunto.

Si alguna de las revisiones especificadas no está presente en el repositorio local, la consulta se
normalmente abortado. Pero este predicado permite que la consulta continúe incluso en tales
casos.

público()

Conjunto de cambios en fase pública.

remoto ([id [,sendero]])

Revisión local que corresponde al identificador dado en un repositorio remoto, si
regalo. Aquí el '.' identificador es un sinónimo de la rama local actual.

elimina (patrón)

Conjuntos de cambios que eliminan archivos que coinciden con el patrón.

El patrón sin tipo explícito como globo: se espera que sea relativo a la
directorio actual y hacer coincidir con un archivo o un directorio.

rev(número)

Revisión con el identificador numérico dado.

revertir (establecer)

Orden inverso del conjunto.

raíces (conjunto)

Conjuntos de cambios en el conjunto sin conjuntos de cambios principales en el conjunto.

secreto()

Conjunto de cambios en fase secreta.

ordenar(establecer[, [-]llave...])

Ordenar establecido por claves. El orden de clasificación predeterminado es ascendente, especifique una clave como -llave a
ordenar en orden descendente.

Las claves pueden ser:

· acelerar para el número de revisión,

· biblioteca para el nombre de la sucursal,

· desc para el mensaje de confirmación (descripción),

· usuario para el nombre de usuario (autor se puede utilizar como un alias),

· datos para la fecha de compromiso

subrepo ([patrón])

Conjuntos de cambios que agregan, modifican o eliminan el subrepo dado. Si no hay patrón subrepo
nombrada, se devuelven los cambios de subrepo.

etiqueta([nombre])

La etiqueta especificada por nombre, o todas las revisiones etiquetadas si no se proporciona ningún nombre.

If nombre comienza con re:, el resto del nombre se trata como regular
expresión. Para hacer coincidir una etiqueta que en realidad comienza con re:, utiliza el prefijo literal:.

inestable()

Conjuntos de cambios no obsoletos con ancestros obsoletos.

usuario (cadena)

El nombre de usuario contiene una cadena. La coincidencia no distingue entre mayúsculas y minúsculas.

If cadena comienza con re:, el resto de la cadena se trata como regular
expresión. Para hacer coincidir un usuario que realmente contiene re:, utiliza el prefijo literal:.

Se pueden definir nuevos predicados (conocidos como "alias"), usando cualquier combinación de los existentes.
predicados u otros alias. Una definición de alias se ve así:

=

existentes revsetalias sección de un archivo de configuración de Mercurial. Argumentos de la forma $1,
$2, etc. se sustituyen del alias a la definición.

Por ejemplo,

[revsetalias]
h = caras()
d ($ 1) = ordenar ($ 1, fecha)
rs ($ 1, $ 2) = invertir (ordenar ($ 1, $ 2))

define tres alias, h, dy rs. rs(0: propina, autor) es exactamente equivalente a
invertir (clasificar (0: propina, autor)).

Un operador infijo ## puede concatenar cadenas e identificadores en una sola cadena. Por ejemplo:

[revsetalias]
problema ($1) = grep(r'\bproblema[:]?' ## $1 ## r'\b|\bbug\(' ## $1 ## r'\)')

(1234) es equivalente a grep(r'\bissue[ :]?1234\b|\berror\(1234\)') en este caso. Esta
coincidencias con todos los "problemas 1234", "problemas: 1234", "problemas 1234" y "error(1234) ".

Todos los demás operadores de prefijo, infijo y posfijo tienen menor prioridad que ##. Por ejemplo, $1
## $ 2 ~ 2 es equivalente a ($ 1 ## $2)~2.

equivalentes de línea de comando para hg log:

-f -> ::.
-dx -> fecha(x)
-kx -> palabra clave(x)
-m -> fusionar()
-ux -> usuario(x)
-bx -> rama(x)
-P x -> !::x
-lx -> límite (expr, x)

Algunas consultas de muestra:

· Conjuntos de cambios en la rama predeterminada:

hg log -r "rama (predeterminado)"

· Conjuntos de cambios en la rama predeterminada desde la etiqueta 1.5 (excluyendo fusiones):

hg log -r "rama (predeterminado) y 1.5:: y no fusionar ()"

· Cabeceras abiertas:

hg log -r "cabeza() y no cerrado()"

· Conjuntos de cambios entre las etiquetas 1.3 y 1.5 que mencionan "errores" que afectan hgext/*:

hg log -r "1.3::1.5 y palabra clave (error) y archivo ('hgext/*')"

· Conjuntos de cambios comprometidos en mayo de 2008, ordenados por usuario:

hg log -r "ordenar (fecha ('mayo de 2008'), usuario)"

· Conjuntos de cambios que mencionan "error" o "problema" que no están en una versión etiquetada:

hg log -r "(palabra clave (error) o palabra clave (problema)) y no ancestros (etiqueta ())"

USO MERCURIAL DESDE GUIONES Y AUTOMATIZACIÓN


Es común que las máquinas (a diferencia de los humanos) consuman Mercurial. Este tema de ayuda
describe algunas de las consideraciones para conectar máquinas con Mercurial.

La elección an Interfaz
Las máquinas pueden elegir entre varios métodos para interactuar con Mercurial. Éstas incluyen:

· Ejecutar el hg

· Consultar un servidor HTTP

· Llamar a un servidor de comando

Ejecutando hg procesos es muy similar a cómo los humanos interactúan con Mercurial en el caparazón.
Ya debería resultarte familiar.

hg ayudar se puede utilizar para iniciar un servidor. De forma predeterminada, esto iniciará un servidor HTTP "hgweb".
Este servidor HTTP tiene soporte para salida legible por máquina, como JSON. Para más, ver hg
ayuda hgweb.

hg ayudar También puede iniciar un "servidor de comando". Los clientes pueden conectarse a este servidor y emitir
Mercurial manda sobre un protocolo especial. Para más detalles sobre el servidor de comandos,
incluidos los enlaces a las bibliotecas de clientes, consulte https://mercurial.selenic.com/wiki/CommandServer.

hg ayudar Las interfaces basadas en hgweb y los servidores de comando tienen la ventaja sobre las simples
hg invocaciones de proceso en el sentido de que probablemente sean más eficientes. Esto se debe a que hay
sobrecarga significativa para generar nuevos procesos de Python.

Sugerencia Si necesita invocar varios hg procesos en poco tiempo y/o el rendimiento es
importante para usted, se recomienda encarecidamente el uso de una interfaz basada en servidor.

Entorno Variables
Como se documenta en hg ayuda entorno, diversas variables ambientales influyen en la
funcionamiento de Mercurial. Los siguientes son particularmente relevantes para las máquinas que consumen
Mercurial:

HGPLANO
Si no se establece, la salida de Mercurial podría verse influenciada por los ajustes de configuración que
afectar su codificación, modo detallado, localización, etc.

Es muy recomendable que las máquinas establezcan esta variable al invocar hg
de los empleados.

CODIFICACIÓN HG
Si no se establece, la configuración regional utilizada por Mercurial se detectará en el entorno. Si
la configuración regional determinada no admite la visualización de ciertos caracteres, Mercurial puede
representar estas secuencias de caracteres incorrectamente (a menudo usando "?" como marcador de posición
para caracteres no válidos en la configuración regional actual).

Establecer explícitamente esta variable de entorno es una buena práctica para garantizar
resultados consistentes. "utf-8" es una buena opción en entornos tipo UNIX.

HGRCPATH
Si no se establece, Mercurial heredará las opciones de configuración de los archivos de configuración usando el
proceso descrito en hg ayuda config. Esto incluye la herencia de usuario o de todo el sistema
archivos de configuración.

Cuando se desea el máximo control sobre la configuración de Mercurial, el valor de
HGRCPATH se puede establecer en un archivo explícito con buenas configuraciones conocidas. En casos raros, el
El valor se puede establecer en un archivo vacío o en el dispositivo nulo (a menudo / dev / null) evitar
carga de cualquier usuario o archivos de configuración del sistema. Tenga en cuenta que estos enfoques pueden tener
consecuencias no deseadas, ya que los archivos de configuración del usuario y del sistema a menudo definen las cosas
como el nombre de usuario y las extensiones que pueden ser necesarias para interactuar con un
repositorio.

Consumidor Comando Salida
Es común que las máquinas necesiten analizar la salida de los comandos de Mercurial para
datos. En esta sección se describen las diversas técnicas para hacerlo.

Parsing Crudo Comando Salida
Probablemente la solución más simple y efectiva para consumir la salida del comando es simplemente
invocar hg comandos como lo haría como usuario y analizar su salida.

La salida de muchos comandos se puede analizar fácilmente con herramientas como grep, SEDy awk.

Una desventaja potencial con la salida del comando de análisis es que la salida de los comandos puede cambiar
cuando se actualiza Mercurial. Si bien Mercurial por lo general se esfuerza por lograr una fuerte inversión
compatibilidad, la salida del comando cambia ocasionalmente. Tener pruebas para su automatizado
interacciones con hg generalmente se recomiendan comandos, pero es aún más importante cuando
está involucrado el análisis de salida de comando sin procesar.

Usar Plantillas a Control Salida
Muchos hg Los comandos admiten la salida en plantilla a través de la -T/--plantilla argumento. Para más, ver
hg ayuda plantillas.

Las plantillas son útiles para controlar explícitamente la salida para que obtenga exactamente los datos
quieres formatear como quieras. Por ejemplo, log -T {nodo}\n se puede utilizar para imprimir un
lista delimitada por saltos de línea de nodos de conjuntos de cambios en lugar de una salida personalizada que contiene
autores, fechas, descripciones, etc.

Sugerencia Si analizar la salida del comando sin procesar es demasiado complicado, considere usar plantillas para hacer
tu vida más fácil.

El -T/--plantilla El argumento permite especificar estilos predefinidos. Mercurial se envía con el
estilos legibles por máquina json y xml, que proporcionan salida JSON y XML, respectivamente.
Estos son útiles para producir una salida legible por máquina tal cual.

Importante:
El json y xml los estilos se consideran experimentales. Si bien pueden ser atractivos
usar para obtener fácilmente una salida legible por máquina, su comportamiento puede cambiar en
versiones posteriores.

Estos estilos también pueden mostrar resultados inesperados cuando se trata de ciertos
codificaciones Mercurial trata cosas como nombres de archivo como una serie de bytes y
normalizar ciertas secuencias de bytes a JSON o XML con ciertas configuraciones de codificación
puede dar lugar a sorpresas.

Comando Servidor Salida
Si usa el servidor de comando para interactuar con Mercurial, probablemente esté usando un servidor existente.
biblioteca/API que abstrae los detalles de implementación del servidor de comandos. Si es así, esto
la capa de interfaz puede realizar el análisis por usted, ahorrándole el trabajo de implementarlo
tú mismo.

Salida Verbosidad
Los comandos a menudo tienen una verbosidad de salida variable, incluso cuando se utilizan estilos legibles por máquina.
usado (por ejemplo -T json). Añadiendo -v / - detallado y --depurar a los argumentos del comando puede
aumentar la cantidad de datos expuestos por Mercurial.

Una forma alternativa de obtener los datos que necesita es especificar explícitamente una plantilla.

Otro Temas
revoluciones
Conjuntos de revisiones es un lenguaje de consulta funcional para seleccionar un conjunto de revisiones.
Piense en ello como repositorios de SQL para Mercurial. Revsets son útiles para consultar
repositorios para datos específicos.

See hg ayuda revoluciones para más.

comparte extensión
El comparte La extensión proporciona funcionalidad para compartir datos del repositorio a través de
varias copias de trabajo. Incluso puede "agrupar" automáticamente el almacenamiento para
repositorios relacionados al clonar.

Configurando el comparte la extensión puede conducir a una utilización significativa de los recursos
reducción, particularmente en torno al espacio en disco y la red. Esto es especialmente cierto
para entornos de integración continua (CI).

See hg ayuda -e comparte para más.

SUBREPOSITORIOS


Los subrepositorios le permiten anidar repositorios o proyectos externos en un Mercurial principal
repositorio, y hacer que los comandos operen en ellos como un grupo.

Mercurial actualmente es compatible con los subrepositorios de Mercurial, Git y Subversion.

Los subrepositorios están hechos de tres componentes:

1. Pagos de repositorios anidados. Pueden aparecer en cualquier parte del directorio de trabajo principal.

2. Referencias de repositorio anidadas. se definen en .hgsub, que debe colocarse en el
raíz del directorio de trabajo y decir de dónde provienen las extracciones del subrepositorio.
Se hace referencia a los subrepositorios de Mercurial como:

ruta/hacia/anidado = https://example.com/nested/repo/path

Los subrepos de Git y Subversion también son compatibles:

ruta/hacia/anidado = [git]git://example.com/nested/repo/ruta
ruta/hacia/anidado = [svn]https://example.com/nested/trunk/path

donde camino/hacia/anidado es la ubicación de pago en relación con la raíz principal de Mercurial,
y https://example.com/nested/repo/path es la ruta del repositorio de origen. La fuente puede
también hace referencia a una ruta del sistema de archivos.

Tenga en cuenta que .hgsub no existe por defecto en los repositorios de Mercurial, tienes que
créelo y agréguelo al repositorio principal antes de usar subrepositorios.

3. Estados de repositorio anidados. se definen en .hgsubestado, que se coloca en la raíz
del directorio de trabajo y capturar cualquier información necesaria para restaurar el
subrepositorios al estado en el que se confirmaron en un conjunto de cambios del repositorio principal.
Mercurial registra automáticamente los estados de los repositorios anidados cuando se confirma en el
repositorio principal.

Note
El .hgsubestado El archivo no debe editarse manualmente.

Adición a Subrepositorio
If .hgsub no existe, créelo y agréguelo al repositorio principal. Clonar o pagar
los proyectos externos donde desea que viva en el repositorio principal. Editar .hgsub y
agregue la entrada del subrepositorio como se describe arriba. En este punto, el subrepositorio está
rastreado y la próxima confirmación registrará su estado en .hgsubestado y unirlo al
conjunto de cambios comprometido.

Sincronizando a Subrepositorio
Los subrepos no rastrean automáticamente el último conjunto de cambios de sus fuentes. En cambio, ellos
se actualizan al conjunto de cambios que corresponde con el conjunto de cambios desprotegido en el
conjunto de cambios de nivel superior. Esto es para que los desarrolladores siempre obtengan un conjunto consistente de código compatible.
y bibliotecas cuando se actualicen.

Por lo tanto, actualizar subrepos es un proceso manual. Simplemente consulte el subrepo de destino en el
revisión deseada, pruebe en el repositorio de nivel superior, luego confirme en el repositorio principal para
registrar la nueva combinación.

Eliminación a Subrepositorio
Para eliminar un subrepositorio del repositorio principal, elimine su referencia de .hgsub,
luego elimine sus archivos.

Interacción mercurial Comandos
add add no recurre en subrepos a menos que se especifique -S/--subrepos. Sin embargo, si
especifica la ruta completa de un archivo en un subrepo, se agregará incluso sin
-S/--subrepos especificado. Los subrepositorios de Subversion están actualmente en silencio
ignorado

agregar eliminar
addremove no recurre a subrepos a menos que se especifique -S/--subrepos.
Sin embargo, si especifica la ruta completa de un directorio en un subrepo, addremove
ejecutarse en él incluso sin especificar -S/--subrepos. Git y subversión
los subrepositorios imprimirán una advertencia y continuarán.

Archivo
El archivo no recurre en los subrepositorios a menos que se especifique -S/--subrepos.

gato cat actualmente solo maneja coincidencias exactas de archivos en subrepos. Subversión
los subrepositorios se ignoran actualmente.

hacer commit crea una instantánea consistente del estado de todo el proyecto y su
subrepositorios. Si se ha modificado algún subrepositorio, Mercurial abortará.
Se puede hacer que Mercurial confirme todos los subrepositorios modificados especificando
-S/--subrepos, o configurando "ui.commitsubrepos=True" en un archivo de configuración (ver hg
ayuda config). Una vez que ya no hay subrepositorios modificados, registra
su estado y finalmente lo confirma en el repositorio principal. El --addremove
La opción también respeta la opción -S/--subrepos. Sin embargo, Git y Subversion
los subrepositorios imprimirán una advertencia y se cancelarán.

diff diff no recurre en subrepos a menos que se especifique -S/--subrepos. Los cambios son
se muestra como de costumbre, en los elementos de los subrepositorios. Los subrepositorios de Subversion son
actualmente ignorado en silencio.

archivos los archivos no recurren a subrepos a menos que se especifique -S/--subrepos. Sin embargo,
si especifica la ruta completa de un archivo o directorio en un subrepo, será
se muestra incluso sin especificar -S/--subrepos. Git y subversión
Actualmente, los subrepositorios se ignoran silenciosamente.

olvidar olvide que actualmente solo maneja coincidencias exactas de archivos en subrepos. Git y subversión
Actualmente, los subrepositorios se ignoran silenciosamente.

amplificación de la voz entrante
incoming no recurre en subrepos a menos que se especifique -S/--subrepos. Git y
Actualmente, los subrepositorios de Subversion se ignoran silenciosamente.

saliente
saliente no recurre en subrepos a menos que se especifique -S/--subrepos. Git y
Actualmente, los subrepositorios de Subversion se ignoran silenciosamente.

recogida tirar no es recursivo ya que no está claro qué tirar antes de ejecutar hg actualización
. Listado y recuperación de todos los cambios de los subrepositorios a los que hace referencia el padre
Los conjuntos de cambios extraídos del repositorio son caros en el mejor de los casos, imposibles en Subversion
.

empuje Mercurial empujará automáticamente todos los subrepositorios primero cuando el padre
el repositorio está siendo empujado. Esto asegura que los nuevos cambios del subrepositorio estén disponibles
cuando se hace referencia a ellos en repositorios de nivel superior. Push no es operativo para Subversion
subrepositorios.

estado el estado no se repite en los subrepositorios a menos que se especifique -S/--subrepos.
Los cambios del subrepositorio se muestran como cambios regulares de Mercurial en el
elementos del subrepositorio. Actualmente, los subrepositorios de Subversion se ignoran silenciosamente.

remove remove no recurre a los subrepositorios a menos que se especifique -S/--subrepos.
Sin embargo, si especifica una ruta de archivo o directorio en un subrepo, se eliminará
incluso sin -S/--subrepos. Los subrepositorios de Git y Subversion están actualmente
silenciosamente ignorado.

actualización la actualización restaura los subrepos en el estado en el que se comprometieron originalmente en el destino
conjunto de cambios Si el conjunto de cambios registrado no está disponible en el subrepositorio actual,
Mercurial lo instalará primero antes de actualizar. Esto significa que la actualización puede
requieren acceso a la red cuando se usan subrepositorios.

Reasignación Subrepositorios Fuentes
La ubicación de origen de un subrepositorio puede cambiar durante la vida de un proyecto, lo que invalida las referencias
almacenado en el historial del repositorio principal. Para solucionar esto, se pueden definir reglas de reescritura en
repositorio principal hgrc o en la configuración de Mercurial. Ver el [subrutas] sección en
hgrc(5) para más detalles.

PLANTILLA USO


Mercurial le permite personalizar la salida de comandos a través de plantillas. Tu también puedes
pasar una plantilla o seleccionar un estilo de plantilla existente desde la línea de comando, a través del
--opción de plantilla.

Puede personalizar la salida para cualquier comando "similar a un registro": registro, saliente, entrante, propina,
padres y jefes.

Algunos estilos integrados se empaquetan con Mercurial. Estos se pueden enumerar con hg log
--plantilla lista. Uso de ejemplo:

$ hg log -r1.0::1.1 --registro de cambios de plantilla

Una plantilla es un fragmento de texto, con marcado para invocar la expansión variable:

$ hg log -r1 --template "{nodo}\n"
b56ce7b07c52de7d5fd79fb89701ea538af65746

Las cadenas entre llaves se llaman palabras clave. La disponibilidad de palabras clave depende de la
contexto exacto de la plantilla. Estas palabras clave suelen estar disponibles para crear una plantilla
comando similar a un registro:

marcador activo
Cuerda. El marcador activo, si está asociado con el conjunto de cambios

autor Cuerda. El autor no modificado del conjunto de cambios.

bisecar Cuerda. El estado de bisección del conjunto de cambios.

marcadores
Lista de cadenas. Cualquier marcador asociado con el conjunto de cambios. También establece 'activo',
el nombre del marcador activo.

biblioteca Cuerda. El nombre de la rama en la que se confirmó el conjunto de cambios.

cambios desde una etiqueta de prueba
Entero. Todos los antepasados ​​que no están en la última etiqueta.

niños
Lista de cadenas. Los hijos del conjunto de cambios.

datos Información de fecha. La fecha en que se confirmó el conjunto de cambios.

desc Cuerda. El texto de la descripción del conjunto de cambios.

difstat
Cuerda. Estadísticas de cambios con el siguiente formato: "ficheros modificados:
+líneas añadidas/-eliminadas"

extras Lista de dictados con claves, entradas de valor del campo 'extras' de este conjunto de cambios.

archivo_agrega
Lista de cadenas. Archivos agregados por este conjunto de cambios.

copias_de_archivo
Lista de cadenas. Archivos copiados en este conjunto de cambios con sus fuentes.

cambiar_copias_de_archivo
Lista de cadenas. Como "file_copies", pero solo se muestra si el modificador --copied está
conjunto.

archivos_dels
Lista de cadenas. Archivos eliminados por este conjunto de cambios.

archivo_mods
Lista de cadenas. Archivos modificados por este conjunto de cambios.

archivos Lista de cadenas. Todos los archivos modificados, agregados o eliminados por este conjunto de cambios.

grafonodo
Cuerda. El carácter que representa el nodo del conjunto de cambios en un gráfico de revisión ASCII

última etiqueta
Lista de cadenas. Las etiquetas globales en el ancestro globalmente etiquetado más reciente de
este conjunto de cambios.

última distancia de etiqueta
Entero. Ruta más larga a la última etiqueta.

espacios de nombres
Dictado de listas. Nombres adjuntos a este conjunto de cambios por espacio de nombres.

nodo Cuerda. El hash de identificación del conjunto de cambios, como una cadena de 40 dígitos hexadecimales.

nodo p1 Cuerda. El hash de identificación del primer padre del conjunto de cambios, como un dígito de 40
cadena hexadecimal. Si el conjunto de cambios no tiene padres, todos los dígitos son 0.

p1rev Entero. El número de revisión local del repositorio del primer padre del conjunto de cambios, o
-1 si el conjunto de cambios no tiene padres.

nodo p2 Cuerda. El hash de identificación del segundo padre del conjunto de cambios, como un dígito de 40
cadena hexadecimal. Si el conjunto de cambios no tiene un segundo padre, todos los dígitos son 0.

p2rev Entero. El número de revisión local del repositorio del segundo padre del conjunto de cambios, o
-1 si el conjunto de cambios no tiene un segundo padre.

padres.
Lista de cadenas. Los padres del conjunto de cambios en formato "rev:node". Si el
el conjunto de cambios solo tiene un padre "natural" (la revisión anterior) nada es
mostrado.

fase Cuerda. El nombre de la fase del conjunto de cambios.

faseidx
Entero. El índice de fase del conjunto de cambios.

acelerar Entero. El número de revisión del conjunto de cambios local del repositorio.

subrepos
Lista de cadenas. Subrepositorios actualizados en el conjunto de cambios.

etiquetas Lista de cadenas. Cualquier etiqueta asociada con el conjunto de cambios.

La palabra clave "fecha" no produce resultados legibles por humanos. Si desea utilizar una fecha en
su salida, puede usar un filtro para procesarla. Los filtros son funciones que devuelven un
cadena basada en la variable de entrada. Asegúrese de usar el filtro stringify primero cuando esté
aplicar un filtro de entrada de cadena a una variable de entrada similar a una lista. También puede utilizar una cadena de
filtros para obtener el resultado deseado:

$ hg tip --template "{fecha|isofecha}\n"
2008-08-21 18:22 +0000

Lista de filtros:

agregar descansos
Cualquier texto. Añadir un XHTML " " etiqueta antes del final de cada línea excepto la última.

edad Fecha. Devuelve una diferencia de fecha/hora legible por humanos entre la fecha/hora dada y
la fecha/hora actual.

nombre base
Cualquier texto. Trata el texto como una ruta y devuelve el último componente de la ruta.
después de dividir por el separador de ruta (ignorando los separadores finales). Por ejemplo,
"foo/bar/baz" se convierte en "baz" y "foo/bar//" se convierte en "bar".

contar Lista o texto. Devuelve la longitud como un número entero.

dominio Cualquier texto. Encuentra la primera cadena que parece una dirección de correo electrónico y extrae
solo el componente de dominio. Ejemplo: Usuario <[email protected]> se convierte en example.com.

email Cualquier texto. Extrae la primera cadena que parece una dirección de correo electrónico. Ejemplo: Usuario
<[email protected]> se convierte en [email protected].

usuario de correo electrónico
Cualquier texto. Devuelve la parte del usuario de una dirección de correo electrónico.

escapar Cualquier texto. Reemplaza los caracteres especiales XML/XHTML "&", "<" y ">" con XML
entidades y filtra los caracteres NUL.

llenar68 Cualquier texto. Ajusta el texto para que quepa en 68 columnas.

llenar76 Cualquier texto. Ajusta el texto para que quepa en 76 columnas.

Primera linea del mar
Cualquier texto. Devuelve la primera línea de texto.

hexagonal Cualquier texto. Convierta un identificador de nodo Mercurial binario en su hexadecimal largo
representación.

fecha alta Fecha. Devuelve la fecha como un par de números: "1157407993 25200" (marca de tiempo de Unix,
desplazamiento de la zona horaria).

isodato
Fecha. Devuelve la fecha en formato ISO 8601: "2009-08-18 13:00 +0200".

isodatesec
Fecha. Devuelve la fecha en formato ISO 8601, incluidos los segundos: "2009-08-18 13:00:13
+0200". Consulte también el filtro de fecha rfc3339.

inferior Cualquier texto. Convierte el texto a minúsculas.

no vacío
Cualquier texto. Devuelve '(ninguno)' si la cadena está vacía.

ofuscar
Cualquier texto. Devuelve el texto de entrada representado como una secuencia de entidades XML.

persona Cualquier texto. Devuelve el nombre antes de una dirección de correo electrónico, interpretándolo según RFC
5322.

revescape
Cualquier texto. Escapa todos los caracteres "especiales", excepto @. Las barras diagonales se escapan
dos veces para evitar que los servidores web los eliminen prematuramente. Por ejemplo, "@foo
bar/baz" se convierte en "@foo%20bar%252Fbaz".

fecha rfc3339
Fecha. Devuelve una fecha utilizando el formato de fecha de Internet especificado en RFC 3339:
"2009-08-18T13:00:13+02:00".

fecha rfc822
Fecha. Devuelve una fecha utilizando el mismo formato utilizado en los encabezados de correo electrónico: "martes, 18 de agosto de 2009
13:00:13 +0200".

Corto Hash de conjunto de cambios. Devuelve la forma abreviada de un hash de conjunto de cambios, es decir, un hexadecimal 12
cadena de dígitos.

corta bisectriz
Cualquier texto. Golosinas texto como un estado de bisección, y devuelve un solo carácter
que representa el estado (G: bueno, B: malo, S: omitido, U: no probado, I: ignorado).
Devuelve un solo espacio si texto no es un estado de bisección válido.

cita corta
Fecha. Devuelve una fecha como "2006-09-18".

líneas de división
Cualquier texto. Divide el texto en una lista de líneas.

encadenar
Cualquier tipo. Convierte el valor en texto convirtiendo los valores en texto y
concatenándolos.

tiradir
Trate el texto como una ruta y elimine un nivel de directorio, si es posible. Por ejemplo, "fu"
y "foo/bar" se convierte en "foo".

tabulador
Cualquier texto. Devuelve el texto, con todas las líneas que no están vacías excepto la primera que comienza
con un carácter de tabulación.

superior Cualquier texto. Convierte el texto a mayúsculas.

paisaje urbano
Cualquier texto. Escapa todos los caracteres "especiales". Por ejemplo, "foo bar" se convierte en
"foo%20bar".

usuario Cualquier texto. Devuelve una breve representación de un nombre de usuario o una dirección de correo electrónico.

Tenga en cuenta que un filtro no es más que una llamada de función, es decir expr|filtro es equivalente
a filtro (expr).

Además de los filtros, existen algunas funciones básicas integradas:

fecha(fecha[, fmt])
Dar formato a una fecha. Ver hg ayuda fechas para formatear cadenas. El valor predeterminado es una fecha de Unix
formato, incluida la zona horaria: "Mon Sep 04 15:13:13 2006 0700".

diff([incluye patrón [, patrón de exclusión]])
Muestra una diferencia, especificando opcionalmente archivos para incluir o excluir.

llenar(texto[, ancho[, identificadorinicial[, colgante]]])
Rellene muchos párrafos con sangría opcional. Ver el filtro de "relleno".

obtener (decir, llave)
Obtenga un atributo/clave de un objeto. Algunas palabras clave son tipos complejos. Esta función
le permite obtener el valor de un atributo en estos tipos.

si (exp, entonces[, demás])
Ejecutar condicionalmente en función del resultado de una expresión.

si contiene (búsqueda, cosa, entonces[, demás])
Ejecutar condicionalmente en función de si el elemento "buscar" está en "cosa".

ifeq(expr1, expr2, entonces[, demás])
Ejecutar condicionalmente en función de si 2 elementos son equivalentes.

sangría (texto, caracteres de sangría [, primera linea])
Aplica sangría a todas las líneas que no están vacías con los caracteres proporcionados en la cadena indentchars. Un
El tercer parámetro opcional anulará la sangría de la primera línea solo si
presente.

unirse (lista, sep)
Unir elementos en una lista con un delimitador.

etiqueta (etiqueta, expr)
Aplicar una etiqueta al contenido generado. El contenido con una etiqueta aplicada puede resultar en
procesamiento posterior adicional, como la coloración automática.

última etiqueta ([patrón])
Las etiquetas globales que coinciden con el patrón dado en la etiqueta global más reciente
antepasado de este conjunto de cambios.

fechalocal(fecha[, tz])
Convierte una fecha a la zona horaria especificada. El valor predeterminado es la fecha local.

almohadilla (texto, ancho[, llenarchar=' '[, derecho=Falso]])
Rellene el texto con un carácter de relleno.

revset(consulta[, etiquetas de formato...])
Ejecute una consulta de conjunto de revisiones. Ver hg ayuda revertir.

rstdoc(texto, estilo)
Formato de texto reestructurado.

más corto (nodo, minlongitud=4)
Obtener la representación más corta de un nodo.

comienza con (patrón, texto)
Devuelve el valor del argumento "texto" si comienza con el contenido del
Argumento del "patrón".

tira(texto[, caracteres])
Quitar caracteres de una cadena. De forma predeterminada, elimina todo lo anterior y lo posterior.
espacio en blanco.

sub(patrón, reemplazo, expresión)
Realice la sustitución de texto utilizando expresiones regulares.

palabra (número, texto[, separador])
Devuelve la enésima palabra de una cadena.

Además, para cualquier expresión que devuelva una lista, hay un operador de lista:

expr % "{plantilla}"

Como se ve en el ejemplo anterior, {plantilla} se interpreta como una plantilla. Para evitar que
siendo interpretado, puede usar un carácter de escape \{ o un prefijo de cadena sin procesar, r '...'.

Algunas plantillas de línea de comando de muestra:

· Formato de listas, por ejemplo, archivos:

$ hg log -r 0 --template "archivos:\n{archivos % ' {archivo}\n'}"

· Únase a la lista de archivos con un ", ":

$ hg log -r 0 --template "archivos: {join(archivos, ', ')}\n"

· Modificar cada línea de una descripción de confirmación:

$ hg log --template "{splitlines(desc) % '**** {línea}\n'}"

· Formato fecha:

$ hg log -r 0 --template "{fecha(fecha, '%Y')}\n"

· Mostrar fecha en UTC:

$ hg log -r 0 --template "{localdate(fecha, 'UTC')|fecha}\n"

· Muestra la descripción establecida en un ancho de relleno de 30:

$ hg log -r 0 --template "{fill(desc, 30)}"

· Usa un condicional para probar la rama predeterminada:

$ hg log -r 0 --template "{ifeq(rama, 'predeterminado', 'en la rama principal',
'en la rama {rama}')}\n"

· Agregue una nueva línea si no está vacía:

$ hg tip --template "{if(autor, '{autor}\n')}"

· Etiquete la salida para su uso con la extensión de color:

$ hg log -r 0 --template "{label('cambio.{fase}', nodo|corto)}\n"

· Invertir el filtro de primera línea, es decir, todo menos la primera línea:

$ hg log -r 0 --template "{sub(r'^.*\n?\n?', '', desc)}\n"

· Mostrar el contenido del campo 'extra', uno por línea:

$ hg log -r 0 --template "{join(extras, '\n')}\n"

· Marque el marcador activo con '*':

$ hg log --template "{marcadores % '{marcador}{ifeq(marcador, activo, '*')} '}\n"

· Encuentra la etiqueta candidata de lanzamiento anterior, la distancia y los cambios desde la etiqueta:

$ hg registro -r. --template "{última etiqueta('re:^.*-rc$') % '{etiqueta}, {cambios}, {distancia}'}\n"

· Marque la copia de trabajo principal con '@':

$ hg log --template "{ifcontains(rev, revset('.'), '@')}\n"

· Mostrar detalles de las revisiones de los padres:

$ hg log --template "{revset('padres(%d)', rev) % '{desc|primera línea}\n'}"

· Mostrar solo descripciones de confirmación que comiencen con "plantilla":

$ hg log --template "{comienza con('plantilla', primera línea(desc))}\n"

· Imprime la primera palabra de cada línea de un mensaje de confirmación:

$ hg log --template "{palabra(0, descripción)}\n"

Enlance RUTAS


Las URL válidas tienen el formato:

local/sistema de archivos/ruta[#revisión]
archivo://local/sistema de archivos/ruta[#revisión]
http://[user[:pass]@]host[:port]/[path][#revision]
https://[user[:pass]@]host[:port]/[path][#revision]
ssh://[usuario@]host[:puerto]/[ruta][#revisión]

Las rutas en el sistema de archivos local pueden apuntar a los repositorios de Mercurial o al paquete
archivos (creados por hg liar or hg amplificación de la voz entrante --manojo) Ver también hg ayuda caminos.

Un identificador opcional después de # indica una rama, etiqueta o conjunto de cambios en particular para usar
desde el repositorio remoto. Ver también hg ayuda las revisiones.

Algunas funciones, como enviar URL a http:// y https://, solo son posibles si el
La función está habilitada explícitamente en el servidor Mercurial remoto.

Tenga en cuenta que la seguridad de las URL de HTTPS depende de la configuración adecuada de web.cacerts.

Algunas notas sobre el uso de SSH con Mercurial:

· SSH requiere una cuenta shell accesible en la máquina de destino y una copia de hg en
la ruta remota o especificada con como remotecmd.

· la ruta es relativa al directorio de inicio del usuario remoto de forma predeterminada. Use una barra adicional en
el inicio de una ruta para especificar una ruta absoluta:

ssh: //example.com//tmp/repository

· Mercurial no utiliza su propia compresión a través de SSH; lo correcto es configurar
en tu ~ / .ssh / config, p.ej:

Host *.miredlocal.ejemplo.com
compresión no
Anfitrión *
Compresión sí

Alternativamente, especifique "ssh -C" como su comando ssh en su archivo de configuración o con
la opción de línea de comando --ssh.

Todas estas URL se pueden almacenar en su archivo de configuración con alias de ruta bajo el
sección [rutas] así:

[caminos]
alias1 = URL1
alias2 = URL2
...

Luego puede usar el alias para cualquier comando que use una URL (por ejemplo hg recogida alias1
será tratado como hg recogida URL1).

Los alias de dos rutas son especiales porque se usan como predeterminados cuando no proporciona el
URL a un comando:

por defecto:
Cuando crea un repositorio con hg clone, el comando clon guarda la ubicación de
el repositorio de origen como la ruta 'predeterminada' del nuevo repositorio. Esto luego se usa
cuando omite la ruta de los comandos tipo push y pull (incluidos los entrantes y salientes).
saliente).

empuje por defecto:
El comando push buscará una ruta llamada 'default-push' y la preferirá a
'predeterminado' si ambos están definidos.

AMPLIACIONES


Esta sección contiene ayuda para las extensiones que se distribuyen junto con Mercurial.
La ayuda para otras extensiones está disponible en el sistema de ayuda.

acl
ganchos para controlar el acceso al repositorio

Este enlace hace posible permitir o denegar el acceso de escritura a determinadas ramas y rutas de un
repositorio al recibir conjuntos de cambios entrantes a través de pretxnchangegroup y pretxncommit.

La autorización se compara en función del nombre de usuario local en el sistema donde se encuentra el gancho.
ejecuta, y no el autor del conjunto de cambios original (ya que este último es simplemente
informativo).

El gancho acl se usa mejor junto con un caparazón restringido como hgsh, evitando
autenticar a los usuarios para que no hagan nada más que empujar o tirar. el anzuelo no es
seguro de usar si los usuarios tienen acceso de shell interactivo, ya que pueden deshabilitar el gancho. Ni
¿Es seguro si los usuarios remotos comparten una cuenta, porque entonces no hay forma de distinguir
de ellas.

El orden en que se realizan las comprobaciones de acceso es:

1. Lista de denegación para sucursales (sección acl.denegar.ramas)

2. Lista de permitidos para sucursales (sección acl.permitir.sucursales)

3. Lista de denegación de rutas (sección acl.negar)

4. Lista de permitidos para rutas (sección acl.permitir)

Las secciones permitir y denegar toman pares clave-valor.

Basado en sucursales Access Control
Ingrese al acl.denegar.ramas y acl.permitir.sucursales secciones para tener acceso basado en sucursales
control. Las claves en estas secciones pueden ser:

· un nombre de sucursal, o

· un asterisco, para coincidir con cualquier rama;

Los valores correspondientes pueden ser:

· una lista separada por comas que contiene usuarios y grupos, o

· un asterisco, para coincidir con cualquiera;

Puede agregar el "!" prefijo a un nombre de usuario o grupo para invertir el sentido de la coincidencia.

basado en ruta Access Control
Ingrese al acl.negar y acl.permitir secciones para tener un control de acceso basado en rutas. Claves en estos
las secciones aceptan un patrón de subárbol (con una sintaxis global por defecto). El correspondiente
los valores siguen la misma sintaxis que las otras secciones anteriores.

Grupos
Los nombres de los grupos deben tener el prefijo @ símbolo. Especificar un nombre de grupo tiene el mismo efecto
como especificar todos los usuarios en ese grupo.

Puede definir los miembros del grupo en el acl.grupos sección. Si no se define un nombre de grupo
allí, y Mercurial se está ejecutando bajo un sistema similar a Unix, la lista de usuarios se tomará
del sistema operativo. De lo contrario, se generará una excepción.

Ejemplo Configuración
[manos]

# Use esto si desea verificar las restricciones de acceso en el momento de la confirmación
pretxncommit.acl = python:hgext.acl.hook

# Use esto si desea verificar las restricciones de acceso para pull, push,
# paquete y servir.
pretxnchangegroup.acl = python:hgext.acl.hook

[ac]
# Permitir o denegar el acceso a los cambios entrantes solo si su origen es
# enumerados aquí, déjelos pasar de lo contrario. La fuente es "servir" para todos
# acceso remoto (http o ssh), "push", "pull" o "bundle" cuando el
# los comandos relacionados se ejecutan localmente.
# Predeterminado: servir
fuentes = servir

[acl.deny.ramas]

# A todos se les niega la rama congelada:
rama-congelada = *

# Un mal usuario es denegado en todas las sucursales:
* = mal usuario

[acl.permitir.sucursales]

# Se permiten algunos usuarios en branch-a:
rama-a = usuario-1, usuario-2, usuario-3

# Solo se permite un usuario en branch-b:
rama-b = usuario-1

# El superusuario está permitido en cualquier rama:
* = superusuario

# Todos están permitidos en branch-for-tests:
rama-para-pruebas = *

[acl.negar]
# Esta lista se revisa primero. Si se encuentra una coincidencia, acl.allow no es
# marcado. Todos los usuarios tienen acceso si acl.deny no está presente.
# Formato para ambas listas: patrón global = usuario, ..., @grupo, ...

# Para hacer coincidir a todos, use un asterisco para el usuario:
# mi/glob/patrón = *

# usuario6 no tendrá acceso de escritura a ningún archivo:
** = usuario6

# El grupo "hg-denied" no tendrá acceso de escritura a ningún archivo:
** = @hg-negado

# Nadie podrá cambiar "DONT-TOUCH-THIS.txt", a pesar de
# todos pueden cambiar todos los demás archivos. Vea abajo.
src/main/resources/NO-TOQUE-ESTO.txt = *

[acl.permitir]
# si acl.allow no está presente, todos los usuarios están permitidos por defecto
# acl.allow vacío = no se permiten usuarios

# El usuario "doc_writer" tiene acceso de escritura a cualquier archivo bajo "docs"
# carpeta:
documentos/** = doc_escritor

# El usuario "jack" y el grupo "diseñadores" tienen acceso de escritura a cualquier archivo
# en la carpeta "imágenes":
imágenes/** = gato, @diseñadores

# Todos (excepto "user6" y "@hg-denied" - ver acl.deny arriba)
# tendrá acceso de escritura a cualquier archivo en la carpeta "recursos"
# (excepto para 1 archivo. Ver acl.deny):
src/principal/recursos/** = *

.hgtags = ingeniero_de_lanzamiento

Ejemplos usando las ! prefijo
Supongamos que hay una rama a la que solo un usuario (o grupo) determinado debería poder acceder, y
no desea restringir el acceso a ninguna otra rama que pueda crearse.

El "!" El prefijo le permite evitar que cualquier persona, excepto un usuario o grupo determinado, empuje
conjuntos de cambios en una rama o ruta determinada.

En los ejemplos a continuación, haremos lo siguiente: 1) Denegar el acceso al "anillo" de la rama a cualquiera que no sea el usuario
"gollum" 2) Denegar el acceso a la rama "lago" a cualquiera que no sea miembro del grupo "hobbit" 3)
Denegar el acceso a un archivo a cualquiera que no sea el usuario "gollum"

[acl.permitir.sucursales]
# Vacío

[acl.deny.ramas]

# 1) solo 'gollum' puede comprometerse con la rama 'anillo';
# 'gollum' y cualquier otra persona aún puede comprometerse con cualquier otra rama.
anillo = !gollum

# 2) solo los miembros del grupo 'hobbit' pueden comprometerse con la rama 'lago';
# Los miembros de 'hobbit' y cualquier otra persona aún pueden comprometerse con cualquier otra rama.
lago = !@hobbit

# También puede denegar el acceso según las rutas de los archivos:

[acl.permitir]
# Vacío

[acl.negar]
# 3) solo 'gollum' puede cambiar el archivo a continuación;
# 'gollum' y cualquiera puede cambiar cualquier otro archivo.
/brumoso/montañas/cueva/anillo = !gollum

caja negra
registrar eventos del repositorio en una caja negra para depurarlos

Registra información de eventos en .hg/blackbox.log para ayudar a depurar y diagnosticar problemas. El
los eventos que se registran se pueden configurar a través de la clave de configuración blackbox.track. Ejemplos:

[caja negra]
pista = *

[caja negra]
pista = comando, fin de comando, excepción de comando, exthook, pythonhook

[caja negra]
pista = entrante

[caja negra]
# limitar el tamaño de un archivo de registro
tamaño máximo = 1.5 MB
# rotar hasta N archivos de registro cuando el actual sea demasiado grande
archivos máximos = 3

Comandos
caja negra
ver los eventos recientes del repositorio:

caja negra hg [OPCIONAL]...

ver los eventos recientes del repositorio

Opciones:

-yo,--límite
el número de eventos a mostrar (predeterminado: 10)

bugzilla
ganchos para integrarse con el rastreador de errores de Bugzilla

Esta extensión de gancho agrega comentarios sobre errores en Bugzilla cuando los conjuntos de cambios se refieren a errores
por Bugzilla ID se ven. El comentario se formatea utilizando el mecanismo de plantilla de Mercurial.

Las referencias de errores pueden incluir opcionalmente una actualización para Bugzilla de las horas dedicadas
trabajando en el error. Los errores también se pueden marcar como corregidos.

Se proporcionan tres modos básicos de acceso a Bugzilla:

1. Acceso a través de la interfaz Bugzilla XMLRPC. Requiere Bugzilla 3.4 o posterior.

2. Verifique los datos a través de la interfaz Bugzilla XMLRPC y envíe el cambio de error por correo electrónico a
Interfaz de correo electrónico Bugzilla. Requiere Bugzilla 3.4 o posterior.

3. Escribir directamente en la base de datos de Bugzilla. Solo las instalaciones de Bugzilla que usan MySQL son
soportado. Requiere Python MySQLdb.

Escribir directamente en la base de datos es susceptible a cambios de esquema y se basa en un
Script de contribución de Bugzilla para enviar correos electrónicos de notificación de cambios de errores. Este script se ejecuta como
el usuario que ejecuta Mercurial, debe ejecutarse en el host con la instalación de Bugzilla, y
requiere permiso para leer los detalles de configuración de Bugzilla y el usuario de MySQL necesario
y contraseña para tener plenos derechos de acceso a la base de datos de Bugzilla. Por estas razones este
el modo de acceso ahora se considera obsoleto y no se actualizará para el nuevo Bugzilla
versiones en el futuro. Solo se admite la adición de comentarios en este modo de acceso.

El acceso a través de XMLRPC requiere que se especifique un nombre de usuario y una contraseña de Bugzilla en el
configuración. Los comentarios se agregan bajo ese nombre de usuario. Dado que la configuración debe ser
legible por todos los usuarios de Mercurial, se recomienda que los derechos de ese usuario sean
restringida en Bugzilla al mínimo necesario para añadir comentarios. Errores de marcado corregidos
requiere Bugzilla 4.0 y posterior.

El acceso a través de XMLRPC/correo electrónico utiliza XMLRPC para consultar Bugzilla, pero envía un correo electrónico a Bugzilla
interfaz de correo electrónico para enviar comentarios a los errores. La dirección De: en el correo electrónico se establece en el
dirección de correo electrónico del usuario de Mercurial, por lo que el comentario parece provenir de Mercurial
usuario. En caso de que Bugzilla no reconozca el correo electrónico del usuario de Mercurial como
Usuario de Bugzilla, el correo electrónico asociado con el nombre de usuario de Bugzilla utilizado para iniciar sesión en Bugzilla
se utiliza en su lugar como la fuente del comentario. Marcar errores corregidos funciona en todos los compatibles
Versiones Bugzilla.

Elementos de configuración comunes a todos los modos de acceso:

versión.bugzilla
El tipo de acceso a utilizar. Los valores reconocidos son:

xmlrpc

Interfaz Bugzilla XMLRPC.

xmlrpc+correo electrónico

Bugzilla XMLRPC e interfaces de correo electrónico.

3.0

Acceso MySQL, Bugzilla 3.0 y posteriores.

2.18

Acceso a MySQL, Bugzilla 2.18 y hasta pero sin incluir 3.0.

2.16

Acceso a MySQL, Bugzilla 2.16 y hasta pero sin incluir 2.18.

bugzilla.regexp
Expresión regular para hacer coincidir los ID de errores para la actualización en el mensaje de confirmación del conjunto de cambios. Eso
debe contener un grupo con nombre "()" que contiene los ID de errores separados por
caracteres que no son dígitos. También puede contener un grupo con nombre con un
número de punto flotante que indica las horas trabajadas en el error. Si no hay grupos con nombre
presente, se supone que el primer grupo "()" contiene los ID de error, y el tiempo de trabajo es
no actualizado. La expresión predeterminada coincide Error 1234, Error No. 1234, Error número
1234, Errores 1234,5678, Error 1234 y 5678 y sus variaciones, seguido de un
número de horas precedido por h or horas, p.ej horas 1.5. La coincidencia no distingue entre mayúsculas y minúsculas.

bugzilla.fixregexp
Expresión regular para hacer coincidir los ID de errores para marcar corregidos en el mensaje de confirmación del conjunto de cambios.
Esto debe contener un grupo con nombre "()" ` que contiene las error Tarjetas de Identificación (ID) separaron by
sin dígitos personajes. It podrían también que no contengo a llamado grupo de XNUMX `` con un
número de punto flotante que indica las horas trabajadas en el error. Si no hay grupos con nombre
presente, se supone que el primer grupo "()" contiene los ID de error, y el tiempo de trabajo es
no actualizado. La expresión predeterminada coincide Correcciones 1234, Correcciones error 1234, Correcciones loco
1234,5678, Correcciones 1234 y 5678 y sus variaciones, seguido de un número de horas
prefijado por h or horas, p.ej horas 1.5. La coincidencia no distingue entre mayúsculas y minúsculas.

bugzilla.fixstatus
El estado para establecer un error al marcar fijo. Defecto RESUELVE.

bugzilla.fixsolution
La resolución para configurar un error al marcar fijo. Defecto FIJO.

bugzilla.estilo
El archivo de estilo que se usará al dar formato a los comentarios.

plantilla.bugzilla
Plantilla para usar al dar formato a los comentarios. Anula el estilo si se especifica. Además
a las palabras clave habituales de Mercurial, la extensión especifica:

{bicho}

El ID de error de Bugzilla.

{raíz}

El nombre de ruta completo del repositorio de Mercurial.

{raíz web}

Ruta eliminada del repositorio de Mercurial.

{hgweb}

URL base para navegar por los repositorios de Mercurial.

Predeterminado conjunto de cambios {nodo|corto} in repo {raíz} se refiere a error
{error}.\ndetalles:\n\t{desc|tabindent}

bugzilla.strip
El número de caracteres separadores de ruta que se van a quitar de la parte frontal del Mercurial
ruta del repositorio ({raíz} en plantillas) para producir {raíz web}.. Por ejemplo, un
repositorio con {raíz} /var/local/mi-proyecto con una tira de 2 da un valor para
{raíz web} of mi proyecto. Predeterminado 0.

web.baseurl
URL base para navegar por los repositorios de Mercurial. Referenciado desde plantillas como {hgweb}.

Elementos de configuración comunes a los modos de acceso XMLRPC+email y MySQL:

bugzilla.mapa de usuario
Ruta del archivo que contiene el correo electrónico del confirmador de Mercurial para las asignaciones de correo electrónico del usuario de Bugzilla.
Si se especifica, el archivo debe contener una asignación por línea:

committer = usuario de Bugzilla

Vea también el [mapa de usuario] .

El [mapa de usuario] La sección se utiliza para especificar asignaciones de correo electrónico de confirmación de Mercurial a Bugzilla
correo electrónico del usuario. Ver también bugzilla.mapa de usuario. Contiene entradas del formulario committer = Bugzilla
usuario.

Configuración del modo de acceso XMLRPC:

bugzilla.bzurl
La URL base para la instalación de Bugzilla. Defecto http://localhost/bugzilla.

bugzilla.usuario
El nombre de usuario que se usará para iniciar sesión en Bugzilla a través de XMLRPC. Defecto loco.

bugzilla.contraseña
La contraseña para iniciar sesión en Bugzilla.

El modo de acceso XMLRPC+email utiliza los elementos de configuración del modo de acceso XMLRPC y también:

bugzilla.bzemail
La dirección de correo electrónico de Bugzilla.

Además, se deben configurar los ajustes de correo electrónico de Mercurial. Consulte la documentación en
hgrc(5), secciones [correo electrónico] y [smtp].

Configuración del modo de acceso de MySQL:

bugzilla.host
Nombre de host del servidor MySQL que contiene la base de datos Bugzilla. Defecto localhost.

bugzilla.db
Nombre de la base de datos Bugzilla en MySQL. Defecto loco.

bugzilla.usuario
Nombre de usuario a utilizar para acceder al servidor MySQL. Defecto loco.

bugzilla.contraseña
Contraseña a utilizar para acceder al servidor MySQL.

bugzilla.tiempo de espera
Tiempo de espera de conexión de la base de datos (segundos). Predeterminado 5.

bugzilla.bzuser
Nombre de usuario alternativo de Bugzilla para registrar comentarios, si el responsable del conjunto de cambios no puede
ser encontrado como usuario de Bugzilla.

bugzilla.bzdir
Directorio de instalación de Bugzilla. Se utiliza de forma predeterminada para notificar. Defecto /var/www/html/bugzilla.

bugzilla.notificar
El comando a ejecutar para que Bugzilla envíe correos electrónicos de notificación de cambios de errores.
Suplentes de un mapa con 3 llaves, bzdir, id (identificación de error) y usuario (autor bugzilla
Email). El valor predeterminado depende de la versión; de 2.18 es "cd %(bzdir)s && perl -T
contrib/sendbugmail.pl %(id)s %(usuario)s".

Activando la extensión:

[extensiones]
bichozilla =

[manos]
# ejecutar bugzilla hook en cada cambio introducido o insertado aquí
entrante.bugzilla = python:hgext.bugzilla.hook

Configuraciones de ejemplo:

Configuración de ejemplo de XMLRPC. Esto usa el Bugzilla en http://my-project.org/bugzilla,
iniciar sesión como usuario [email protected] con contraseña enchufe. Se usa con un
colección de depósitos de Mercurial en /var/local/hg/repos/, con una interfaz web en
http://my-project.org/hg.

[bugzilla]
bzurl=http://my-project.org/bugzilla
usuario =[email protected]
contraseña = enchufe
versión=xmlrpc
template=Conjunto de cambios {nodo|corto} en {raíz|nombre base}.
{hgweb}/{webroot}/rev/{nodo|corto}\n
{desc}\n
tira = 5

[web]
baseurl =http://my-project.org/hg

Ejemplo de configuración de XMLRPC+correo electrónico. Esto usa el Bugzilla en
http://my-project.org/bugzilla, iniciando sesión como usuario [email protected] con contraseña
enchufe. Se utiliza con una colección de depósitos de Mercurial en /var/local/hg/repos/,
con una interfaz web en http://my-project.org/hg. Los comentarios de errores se envían a Bugzilla
dirección de correo electrónico [email protected].

[bugzilla]
bzurl=http://my-project.org/bugzilla
usuario =[email protected]
contraseña = enchufe
versión=xmlrpc+correo electrónico
bzemail=[email protected]
template=Conjunto de cambios {nodo|corto} en {raíz|nombre base}.
{hgweb}/{webroot}/rev/{nodo|corto}\n
{desc}\n
tira = 5

[web]
baseurl =http://my-project.org/hg

[mapa de usuario]
[email protected]=[email protected]

Configuración de ejemplo de MySQL. Esto tiene una instalación local de Bugzilla 3.2 en
/opt/bugzilla-3.2. La base de datos MySQL está activada. localhost, el nombre de la base de datos de Bugzilla es loco
y se accede a MySQL con el nombre de usuario de MySQL loco la contraseña XYZZY. Se usa con un
colección de depósitos de Mercurial en /var/local/hg/repos/, con una interfaz web en
http://my-project.org/hg.

[bugzilla]
host = localhost
contraseña=XYZZY
versión = 3.0
usuario=[email protected]
bzdir=/opt/bugzilla-3.2
template=Conjunto de cambios {nodo|corto} en {raíz|nombre base}.
{hgweb}/{webroot}/rev/{nodo|corto}\n
{desc}\n
tira = 5

[web]
baseurl =http://my-project.org/hg

[mapa de usuario]
[email protected]=[email protected]

Todo lo anterior agrega un comentario al registro de errores de Bugzilla del formulario:

Conjunto de cambios 3b16791d6642 en el nombre del repositorio.
http://my-project.org/hg/repository-name/rev/3b16791d6642

Comentario de confirmación de conjunto de cambios. Error 1234.

censurar
borrar el contenido del archivo en una revisión determinada

El comando de censura indica a Mercurial que borre todo el contenido de un archivo en una revisión dada
sin actualización las conjunto de cambios picadillo. Esto permite que el historial existente siga siendo válido mientras
evitando que futuros clones/extracciones reciban los datos borrados.

Los usos típicos de censor se deben a requisitos legales o de seguridad, que incluyen:

* Contraseñas, claves privadas, material criptográfico
* Datos/códigos/bibliotecas con licencia cuya licencia ha caducado
* Información de identificación personal u otros datos privados

Los nodos censurados pueden interrumpir la operación típica de Mercurial siempre que los datos eliminados necesiten
de materializarse. Algunos comandos, como hg gato/hg revertir, simplemente falla cuando se le pide
producir datos censurados. Otros, como hg verificar y hg actualización, debe ser capaz de tolerar
datos censurados para continuar funcionando de manera significativa. Tales órdenes sólo toleran
revisiones de archivos censurados si están permitidas por la opción de configuración "censor.policy=ignore".

Comandos
censurar
hg censor -r REV [-t TEXTO] [ARCHIVO]

Opciones:

-r,--Rvdo
archivo de censura de revisión especificada

-t,--lápida sepulcral
datos de lápida de reemplazo

cambiarservidor
extensión del servidor de comando para cHg (EXPERIMENTAL)

'S' canal (leer escribir)
propagar la solicitud ui.system() al cliente

'agregado' comando
adjuntar el stdio del cliente pasado por sendmsg()

'chdir' comando
cambiar directorio actual

'getpager' comando
comprueba si el buscapersonas está habilitado y qué buscapersonas debe ejecutarse

'setenv' comando
reemplazar os.environ completamente

'SUSCRIBIR' señal
recargar archivos de configuración

niños
comando para mostrar conjuntos de cambios secundarios (DEPRECATED)

Esta extensión está obsoleta. Deberías usar hg log -r "niños (REV)" preferiblemente.

Comandos
niños
mostrar los elementos secundarios de la revisión del directorio dado o de trabajo:

hg niños [-r REV] [ARCHIVO]

Imprime los elementos secundarios de las revisiones del directorio de trabajo. Si se da una revisión a través de
-r/--rev, se imprimirán los hijos de esa revisión. Si se da un argumento de archivo,
revisión en la que se modificó por última vez el archivo (después de la revisión del directorio de trabajo o la
argumento a --rev si se da) se imprime.

Por favor, use hg log en lugar:

hg hijos => hg log -r 'hijos()'
hg hijos -r REV => hg log -r 'hijos(REV)'

See hg ayuda log y hg ayuda revsets.niños.

Opciones:

-r,--Rvdo
mostrar hijos de la revisión especificada

--estilo
mostrar usando el archivo de mapa de plantilla (DEPRECATED)

-T,--plantilla
mostrar con plantilla

batir
comando para mostrar estadísticas sobre el historial del repositorio

Comandos
batir
histograma de cambios en el repositorio:

hg churn [-d FECHA] [-r REV] [--alias ARCHIVO] [ARCHIVO]

Este comando mostrará un histograma que representa el número de líneas modificadas o
revisiones, agrupadas de acuerdo con la plantilla dada. La plantilla predeterminada se agrupará
cambios por autor. La opción --dateformat se puede usar para agrupar los resultados por fecha
preferiblemente.

Las estadísticas se basan en el número de líneas modificadas o, alternativamente, en el número de
revisiones coincidentes si se especifica la opción --changesets.

Ejemplos:

# muestra el recuento de líneas modificadas para cada confirmador
hg rotación -t "{autor|correo electrónico}"

# mostrar gráfico de actividad diaria
hg abandono -f "%H" -s -c

# muestra la actividad de los desarrolladores por mes
hg abandono -f "%Y-%m" -s -c

# muestra el recuento de líneas cambiadas cada año
hg abandono -f "%Y" -s

Es posible asignar direcciones de correo electrónico alternativas a una dirección principal proporcionando un archivo
utilizando el siguiente formato:

=

Dicho archivo se puede especificar con la opción --aliases; de lo contrario, se generará un archivo .hgchurn.
buscado en la raíz del directorio de trabajo. Los alias se dividirán desde el "=" más a la derecha.

Opciones:

-r,--Rvdo
tasa de conteo para la revisión o conjunto de revisiones especificado

-D,--fecha
Tasa de conteo para revisiones que coincidan con las especificaciones de fecha

-t,--plantilla antigua
plantilla para agrupar conjuntos de cambios (DEPRECATED)

-T,--plantilla
plantilla para agrupar conjuntos de cambios (predeterminado: {autor|correo electrónico})

-F,--formato de fecha
formato compatible con strftime para agrupar por fecha

-C, --conjuntos de cambios
tasa de recuento por número de conjuntos de cambios

-s, --clasificar
ordenar por clave (predeterminado: ordenar por conteo)

--diffstat
mostrar líneas añadidas/eliminadas por separado

--alias
archivo con alias de correo electrónico

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

paquetes de clones
anunciar paquetes pregenerados para sembrar clones

"clonebundles" es una extensión del lado del servidor que se utiliza para anunciar la existencia de
archivos de paquete alojados externamente y generados previamente a clientes que están clonando para que la clonación
puede ser más rápido, más confiable y requerir menos recursos en el servidor.

La clonación puede ser una operación intensiva de CPU y E/S en los servidores. Tradicionalmente, el servidor, en
respuesta a la solicitud de clonación de un cliente, genera dinámicamente un paquete que contiene el
todo el contenido del repositorio y lo envía al cliente. No hay almacenamiento en caché en el servidor.
y el servidor tendrá que generar de forma redundante el mismo paquete saliente en respuesta a
cada solicitud de clonación. Para servidores con grandes repositorios o con un alto volumen de clones, el
la carga desde clones puede hacer que escalar el servidor sea un desafío y costoso.

Esta extensión proporciona a los operadores de servidores la capacidad de descargar potencialmente costosas
clone la carga a un servicio externo. Así es como funciona.

1. Un operador de servidor establece un mecanismo para hacer que los archivos de paquetes estén disponibles en un
servicio de hosting donde los clientes de Mercurial pueden obtenerlos.

2. Se agrega un archivo de manifiesto que enumera las URL de paquetes disponibles y algunos metadatos opcionales.
el repositorio de Mercurial en el servidor.

3. Un cliente inicia una clonación contra un servidor compatible con paquetes de clonación.

4. El cliente ve que el servidor anuncia paquetes de clones y obtiene el manifiesto
listado de paquetes disponibles.

5. El cliente filtra y ordena los paquetes disponibles según lo que admite y
prefiere.

6. El cliente descarga y aplica un paquete disponible desde la URL especificada por el servidor.

7. El cliente se vuelve a conectar al servidor original y realiza el equivalente a hg recogida a
recuperar todos los datos del repositorio que no están en el paquete. (El repositorio podría haber sido actualizado
entre el momento en que se creó el paquete y el momento en que el cliente inició la clonación).

En lugar de que el servidor genere paquetes de repositorios completos para cada solicitud de clonación,
genera paquetes completos una vez y luego se reutilizan para iniciar nuevos clones. El
el servidor aún puede transferir datos en el momento de la clonación. Sin embargo, estos son solo datos que han sido
agregado/modificado desde que se creó el paquete. Para repositorios grandes y establecidos, esto puede
reduzca la carga del servidor para clones a menos del 1% del original.

Para funcionar, esta extensión requiere lo siguiente de los operadores del servidor:

· Generar archivos de paquete de contenido del repositorio (generalmente periódicamente, como una vez por
día).

· Un servidor de archivos al que los clientes tienen acceso a la red y con el que Python sabe cómo comunicarse
a través de su facilidad normal de manejo de URL (típicamente un servidor HTTP).

· Un proceso para mantener el manifiesto de paquetes sincronizado con los archivos de paquetes disponibles.

Estrictamente hablando, no se requiere el uso de un servidor de alojamiento de archivos estático: un operador de servidor
podría usar un servicio dinámico para recuperar datos de paquetes. Sin embargo, el alojamiento de archivos estáticos
los servicios son simples y escalables y deberían ser suficientes para la mayoría de las necesidades.

Los archivos de paquete se pueden generar con el hg liar mando. Típicamente hg liar --todas is
se utiliza para producir un paquete de todo el repositorio.

hg debugcreatestreamclonebundle se puede utilizar para producir un especial en streaming clonar liar.
Estos son archivos de paquete que son extremadamente eficientes para producir y consumir (léase: rápido).
Sin embargo, son más grandes que los formatos de paquetes tradicionales y requieren que los clientes admitan
el conjunto exacto de formatos de almacenamiento de datos del repositorio en uso por el repositorio que los creó.
Por lo general, un servidor más nuevo puede servir datos compatibles con clientes más antiguos. Sin embargo,
en streaming clonar manojos no tiene esta garantía. Servidor operadores necesite a be conscientes esa
más nuevo versiones of mercurial podrían producir en streaming clonar manojos incompatible mayor
mercurial versiones.

Un operador de servidor es responsable de crear un .hg/clonebundles.manifest archivo que contiene
la lista de archivos de paquete disponibles adecuados para sembrar clones. Si este archivo no
existen, el repositorio no anunciará la existencia de paquetes de clonación cuando los clientes
conectar.

El archivo de manifiesto contiene una lista de entradas delimitada por saltos de línea ( ).

Cada línea de este archivo define un paquete disponible. Las líneas tienen el formato:

[ = [ = ]]

Es decir, una URL seguida de una lista opcional delimitada por espacios de pares clave=valor que describen
propiedades adicionales de este paquete. Tanto las claves como los valores están codificados con URI.

Las teclas en MAYÚSCULAS están reservadas para uso de Mercurial y se definen a continuación. Todo
Las instalaciones del sitio pueden usar teclas que no sean mayúsculas. Un ejemplo de uso para propiedades personalizadas
es usar el centro de datos atributo para definir en qué centro de datos está alojado un archivo.
Los clientes podrían entonces preferir un servidor en el centro de datos más cercano a ellos.

Las siguientes claves reservadas están definidas actualmente:

Especificaciones del paquete
Una cadena de "especificación de paquete" que describe el tipo de paquete.

Estos son valores de cadena que son aceptados por el argumento "--type" de hg liar.

Los valores se analizan en modo estricto, lo que significa que deben ser del
" - " formulario. Ver mercurial.exchange.parsebundlespec() para más
Detalles.

hg paquete de depuración --Especificaciones se puede utilizar para imprimir la cadena de especificación del paquete para un
archivo de paquete. La salida de este comando se puede usar palabra por palabra para el valor de
Especificaciones del paquete (ya está escapado).

Los clientes filtrarán automáticamente las especificaciones que son desconocidas o
sin soporte para que no intenten descargar algo que probablemente no se aplique.

El valor real no afecta el comportamiento del cliente más allá del filtrado: los clientes
Todavía huele el tipo de paquete del encabezado de los archivos descargados.

Uso of así clave is altamente recomendado, ya que permite a los clientes omitir fácilmente
paquetes no admitidos. Si esta clave no está definida, un cliente antiguo puede intentar aplicar
un paquete que es incapaz de leer.

REQUIERENI
Si se requiere la indicación del nombre del servidor (SNI) para conectarse a la URL. SNI permite
servidores para utilizar varios certificados en la misma IP. Es algo común en los CDN.
y otros proveedores de alojamiento. Las versiones anteriores de Python no son compatibles con SNI. Definición
este atributo permite a los clientes con versiones anteriores de Python filtrar esta entrada
sin experimentar una falla de SSL opaca en el momento de la conexión.

Si esto está definido, es importante anunciar una URL de respaldo que no sea SNI o clientes
Es posible que ejecutar versiones antiguas de Python no pueda clonar con los clonebundles
instalaciones.

El valor debe ser "verdadero".

Los manifiestos pueden contener varias entradas. Suponiendo que los metadatos estén definidos, los clientes filtrarán
entradas del manifiesto que no admiten. Las entradas restantes son opcionales
ordenados por preferencias del cliente (experimental.clonebundleprefiere opción de configuración). El cliente
luego intenta obtener el paquete en la primera URL de la lista restante.

Errores cuando Descarga de a liar seguirá fallar las toda clonar operación: clientes do no
automáticamente otoño Atrás a a tradicional clonar. La razón de esto es que si un servidor está
usando paquetes de clonación, probablemente lo esté haciendo porque la función es necesaria para ayudarlo
escala. En otras palabras, se supone que la carga del clon se descargará a otro
servicio y que el servidor Mercurial no es responsable de servir esta carga clonada. Si
que otro servicio experimente problemas y los clientes comiencen a recurrir masivamente al original
Servidor Mercurial, la carga de clones agregada podría abrumar al servidor debido a una carga inesperada
y desconectarlo efectivamente. No hacer que los clientes recurran automáticamente a la clonación
del servidor original mitiga este escenario.

Debido a que no hay un respaldo automático del servidor Mercurial en caso de falla del alojamiento del paquete
servicio, es importante que los operadores de servidores vean el servicio de alojamiento de paquetes como un
Ampliación del servidor Mercurial en términos de disponibilidad y acuerdos de nivel de servicio:
si el servicio de alojamiento del paquete deja de funcionar, también lo hace la capacidad de clonación de los clientes. Nota:
los clientes verán un mensaje informándoles cómo omitir la instalación de paquetes de clonación cuando un
se produce la falla. Por lo tanto, los operadores de servidores deben prepararse para que algunas personas sigan estos
instrucciones cuando ocurre una falla, lo que genera más carga para el Mercurial original
servidor cuando falla el servicio de hospedaje del paquete.

Color
colorear la salida de algunos comandos

La extensión de color colorea la salida de varios comandos de Mercurial. por ejemplo, el
El comando diff muestra las adiciones en verde y las eliminaciones en rojo, mientras que el comando de estado muestra
archivos modificados en magenta. Muchos otros comandos tienen colores análogos. Es posible
personalizar estos colores.

Efectos
También están disponibles otros efectos además del color, como texto en negrita y subrayado. Por
por defecto, la base de datos terminfo se usa para encontrar los códigos de terminal usados ​​para cambiar el color y
efecto. Si terminfo no está disponible, los efectos se procesan con el ECMA-48 SGR
función de control (también conocido como códigos de escape ANSI).

Los efectos disponibles en el modo terminfo son 'parpadeo', 'negrita', 'atenuado', 'inverso', 'invisible',
'cursiva', 'destacado' y 'subrayado'; en el modo ECMA-48, las opciones son 'negrita', 'inversa',
'cursiva' y 'subrayado'. La forma en que se representa cada uno depende del emulador de terminal. Algunos
puede no estar disponible para un tipo de terminal determinado y se ignorará en silencio.

Etiquetas
El texto recibe efectos de color dependiendo de las etiquetas que tenga. Muchos Mercurial por defecto
los comandos emiten texto etiquetado. También puede definir sus propias etiquetas en plantillas usando el
función de etiqueta, ver hg ayuda plantillas. Una sola porción de texto puede tener más de una
etiqueta. En ese caso, los efectos dados a la última etiqueta anularán cualquier otro efecto. Esta
incluye el efecto especial "ninguno", que anula otros efectos.

Las etiquetas son normalmente invisibles. Para ver estas etiquetas y su posición en el
text, utilice la opción global --color=debug. El mismo texto ancla puede estar asociado a
varias etiquetas, por ejemplo

[log.changeset changeset.secret|changeset: 22611:6f0a53c8f587]

Los siguientes son los efectos predeterminados para algunas etiquetas predeterminadas. Los efectos predeterminados pueden ser
anulado de su archivo de configuración:

[color]
status.modified = subrayado en negrita azul fondo_rojo
status.added = negrita verde
status.removed = rojo negrita blue_background
status.deleted = subrayado en negrita cian
status.unknown = subrayado en negrita magenta
status.ignored = negrita negra

# 'ninguno' apaga todos los efectos
estado.limpio = ninguno
estado.copiado = ninguno

qseries.applied = subrayado en negrita azul
qseries.unapplied = negrita negra
qseries.missing = negrita roja

diferencia.diffline = negrita
diff.extended = negrita cian
diff.file_a = negrita roja
diff.file_b = negrita verde
diff.trozo = magenta
diff.borrado = rojo
diff.insertado = verde
diff.cambiado = blanco
diferencia.tab =
diff.trailingwhitespace = fondo_rojo en negrita

# En blanco para que herede el estilo de la etiqueta circundante
conjuntodecambios.publico =
conjuntodecambios.borrador =
conjuntodecambios.secreto =

resolve.unresolved = negrita roja
resolve.resolved = negrita verde

marcadores.activo = verde

sucursales.active = ninguno
ramas.cerrado = negrita negra
ramas.actual = verde
sucursales.inactivo = ninguno

etiquetas.normal = verde
tags.local = negrita negra

rebase.rebased = azul
rebase.remaining = negrita roja

archivar.edad = cian
shelve.newest = negrita verde
shelve.name = negrita azul

histedit.remaining = negrita roja

Personalizado colores
Debido a que solo hay ocho colores estándar, este módulo le permite definir nombres de colores
para otras ranuras de color que podrían estar disponibles para su tipo de terminal, asumiendo terminfo
modo. Por ejemplo:

color.azul brillante = 12
color.rosa = 207
color.naranja = 202

para establecer 'azul brillante' en la ranura de color 12 (útil para terminales de 16 colores que tienen
colores definidos en los ocho superiores) y, 'rosa' y 'naranja' a colores en xterm de 256 colores
cubo de color predeterminado. Estos colores definidos se pueden usar como cualquiera de los colores predefinidos.
ocho, incluida la adición de '_background' para establecer el fondo en ese color.

Modos
De forma predeterminada, la extensión de color utilizará el modo ANSI (o el modo win32 en Windows) si
detecta un terminal. Para anular el modo automático (para habilitar el modo terminfo, por ejemplo), configure el
siguiente opción de configuración:

[color]
modo = terminfo

Cualquier valor que no sea 'ansi', 'win32', 'terminfo' o 'auto' desactivará el color.

Tenga en cuenta que en algunos sistemas, el modo terminfo puede causar problemas al usar el color con el
extensión de buscapersonas y menos -R. menos con la opción -R solo mostrará el color ECMA-48
códigos, y el modo terminfo a veces puede emitir códigos que menos no entiende. Usted puede
solucione esto usando el modo ansi (o el modo automático), o usando menos -r (que
pasar por todos los códigos de control de terminal, no solo los códigos de control de color).

En algunos sistemas (como MSYS en Windows), el terminal puede admitir un modo de color diferente
que el localizador (activado a través de la extensión "localizador"). Es posible definir por separado
modos dependiendo de si el buscapersonas está activo:

[color]
modo = automático
modo de paginación = ansi

If modo buscapersonas no está definido, el modo se utilizará.

Comandos
convertir
importar revisiones de repositorios VCS extranjeros a Mercurial

Comandos
convertir
convertir un repositorio SCM extranjero a uno de Mercurial.:

hg convert [OPCIÓN]... ORIGEN [DEST [REVMAP]]

Formatos de origen aceptados [identificadores]:

· Mercurial [hg]

· CVS [cvs]

· Darcos [darcos]

· git [git]

· Subversión [svn]

· Monótono [mtn]

· Arquitectura GNU [gnuarch]

· Bazar [bzr]

· Por fuerza [p4]

Formatos de destino aceptados [identificadores]:

· Mercurial [hg]

· Subversion [svn] (no se conserva el historial de las ramas)

Si no se proporciona ninguna revisión, se convertirán todas las revisiones. De lo contrario, la conversión solo
importar hasta la revisión nombrada (dado en un formato entendido por la fuente).

Si no se especifica ningún nombre de directorio de destino, el valor predeterminado es el nombre base de la fuente
-hg adjunto. Si el repositorio de destino no existe, se creará.

De manera predeterminada, todas las fuentes excepto Mercurial usarán --branchsort. usos mercuriales
--sourcesort para conservar el orden de los números de revisión originales. Los modos de clasificación tienen lo siguiente
efectos:

--clasificación de sucursales
convertir de padre a hijo revisión cuando sea posible, lo que significa que las ramas son
generalmente se convierte uno tras otro. Genera repositorios más compactos.

--clasificación de fecha
ordenar las revisiones por fecha. Los repositorios convertidos tienen registros de cambios atractivos, pero son
a menudo un orden de magnitud mayor que los mismos generados por --branchsort.

--origenfuente
intente conservar el orden de las revisiones de las fuentes, solo compatibles con las fuentes de Mercurial.

--closesort
intente mover las revisiones cerradas lo más cerca posible de las ramas principales, solo
apoyado por fuentes de Mercurial.

If REVMAP no se proporciona, se colocará en una ubicación predeterminada (/.hg/shamap by
defecto). El REVMAP es un archivo de texto simple que asigna cada ID de confirmación de origen a la
ID de destino para esa revisión, así:



Si el archivo no existe, se crea automáticamente. Se actualiza en cada confirmación copiada,
so hg convertir se puede interrumpir y se puede ejecutar repetidamente para copiar nuevas confirmaciones.

El authormap es un archivo de texto simple que asigna cada autor de confirmación de origen a un destino
cometer autor. Es útil para los SCM de origen que usan inicios de sesión de Unix para identificar a los autores (p. ej.:
CVS). Una línea por asignación de autor y el formato de línea es:

autor de origen = autor de destino

Líneas vacías y líneas que comienzan con un # se ignoran

El mapa de archivos es un archivo que permite filtrar y reasignar archivos y directorios. Cada
line puede contener una de las siguientes directivas:

incluir ruta/a/archivo-o-dir

excluir ruta/a/archivo-o-dir

renombrar ruta/a/origen ruta/a/destino

Las líneas de comentarios comienzan con #. Una ruta especificada coincide si es igual al nombre relativo completo
de un archivo o uno de sus directorios principales. El incluir or excluir directiva con el
se aplica la ruta de coincidencia más larga, por lo que el orden de las líneas no importa.

El incluir directiva hace que un archivo, o todos los archivos de un directorio, se incluyan en el
repositorio de destino. El valor predeterminado si no hay incluir declaraciones es incluir
todo. Si hay alguno incluir declaraciones, no se incluye nada más. El excluir
directiva hace que se omitan archivos o directorios. El rebautizar directiva cambia el nombre de un archivo
o directorio si se convierte. Para cambiar el nombre de un subdirectorio a la raíz del
depósito, uso . como la ruta a la que cambiar el nombre.

--lleno se asegurará de que los conjuntos de cambios convertidos contengan exactamente los archivos correctos con el
contenido correcto. Hará una conversión completa de todos los archivos, no solo los que tienen
cambió. Los archivos que ya son correctos no se modificarán. Esto se puede utilizar para aplicar
el mapa de archivos cambia al convertir incrementalmente. Actualmente, esto solo es compatible con
Mercurial y Subversión.

El mapa de empalme es un archivo que permite la inserción de la historia sintética, lo que le permite especificar
los padres de una revisión. Esto es útil si quiere, por ejemplo, dar a Subversion fusionar dos
padres, o unir dos series inconexas de historia. Cada entrada contiene una clave,
seguido de un espacio, seguido de uno o dos valores separados por comas:

clave padre1, padre2

La clave es el ID de revisión en el sistema de control de revisión de origen cuyos padres deben ser
modificado (mismo formato que una clave en .hg/shamap). Los valores son los ID de revisión (ya sea en
el sistema de control de revisión de origen o destino) que deben usarse como los nuevos padres
para ese nodo. Por ejemplo, si fusionó "release-1.0" con "trunk", entonces debería
especifique la revisión en "trunk" como el primer padre y la de "release-1.0"
rama como la segunda.

El mapa de sucursales es un archivo que le permite cambiar el nombre de una sucursal cuando se está trayendo
desde cualquier repositorio externo. Cuando se utiliza junto con un mapa de empalme, permite
para una poderosa combinación que ayude a reparar incluso los repositorios peor administrados y
conviértalos en repositorios de Mercurial bien estructurados. El branchmap contiene líneas de
la forma:

nombre_sucursal_original nombre_nueva_sucursal

donde "original_branch_name" es el nombre de la sucursal en el repositorio de origen, y
"new_branch_name" es el nombre de la sucursal que es el repositorio de destino. sin espacios en blanco
está permitido en los nombres de las sucursales. Esto se puede usar para (por ejemplo) mover el código en una
repositorio de "predeterminado" a una rama con nombre.

mercurial Fuente
La fuente de Mercurial reconoce las siguientes opciones de configuración, que puede establecer en
la línea de comando con --config:

convertir.hg.ignorar errores
ignorar los errores de integridad al leer. Úselo para arreglar los repositorios de Mercurial con
revlogs faltantes, convirtiendo desde y hacia Mercurial. El valor predeterminado es Falso.

convertir.hg.saverev
almacenar el ID de revisión original en el conjunto de cambios (obliga a cambiar los ID de destino). Toma un
argumento booleano y el valor predeterminado es falso.

convertir.hg.startrev
especificar la revisión inicial de Mercurial. El valor predeterminado es 0.

convertir.hg.revs
revset especificando las revisiones de origen para convertir.

CVS Fuente
La fuente de CVS utilizará una caja de arena (es decir, una copia desprotegida) de CVS para indicar el inicio
punto de lo que se convertirá. No se necesita acceso directo a los archivos del repositorio,
a menos, por supuesto, que el repositorio sea :local:. La conversión utiliza el directorio de nivel superior en
el sandbox para encontrar el repositorio de CVS, y luego usa los comandos rlog de CVS para buscar archivos para
convertir. Esto significa que, a menos que se proporcione un mapa de archivos, todos los archivos del directorio de inicio
será convertido, y que cualquier reorganización de directorios en el sandbox de CVS es ignorada.

Las siguientes opciones se pueden utilizar con --config:

convertir.cvsps.cache
Establézcalo en Falso para deshabilitar el almacenamiento en caché de registros remotos, con fines de prueba y depuración.
El valor predeterminado es Verdadero.

convertir.cvsps.fuzz
Especifique el tiempo máximo (en segundos) que se permite entre confirmaciones con
usuario idéntico y mensaje de registro en un único conjunto de cambios. Cuando los archivos muy grandes eran
registrado como parte de un conjunto de cambios, es posible que el valor predeterminado no sea lo suficientemente largo. El
el predeterminado es 60.

convertir.cvsps.mergeto
Especifique una expresión regular con la que coincidan los mensajes de registro de confirmación. si un partido
ocurre, entonces el proceso de conversión insertará una revisión ficticia fusionando la rama
en el que aparece este mensaje de registro en la rama indicada en la expresión regular. El valor predeterminado es
{{combinar con una rama ([-\w]+)}}

convertir.cvsps.mergefrom
Especifique una expresión regular con la que coincidan los mensajes de registro de confirmación. si un partido
ocurre, entonces el proceso de conversión agregará la revisión más reciente en la rama
indicado en la expresión regular como el segundo padre del conjunto de cambios. El valor predeterminado es
{{mergefrombranch ([-\w]+)}}

convertir.localtimezone
usar la hora local (según lo determinado por la variable de entorno TZ) para el conjunto de cambios
fecha/horas. El valor predeterminado es Falso (usar UTC).

ganchos.cvslog
Especifique una función de Python que se llamará al final de la recopilación del registro de CVS. El
A la función se le pasa una lista con las entradas de registro y puede modificar las entradas.
en el lugar, o agregarlos o eliminarlos.

ganchos.cvschangesets
Especifique una función de Python para que se llame después de que los conjuntos de cambios se calculen a partir de la
Registro CVS. A la función se le pasa una lista con las entradas del conjunto de cambios y puede modificar
los conjuntos de cambios en el lugar, o agregarlos o eliminarlos.

Un comando adicional de Mercurial "debugcvsps" permite que el código integrado de combinación de cambios
ser ejecutado sin hacer una conversión. Sus parámetros y salida son similares a los de cvsps.
2.1. Consulte la ayuda del comando para obtener más detalles.

Subversión Fuente
La fuente de Subversion detecta diseños clásicos de troncales/ramas/etiquetas. Por defecto, el suministrado
svn://repo/ruta/ La URL de origen se convierte como una sola rama. Si svn://repo/ruta/tronco
existe, reemplaza la rama predeterminada. Si svn://repo/ruta/ramas existe, su
los subdirectorios se enumeran como posibles ramas. Si svn://repo/ruta/etiquetas existe, es
buscó etiquetas que hicieran referencia a ramas convertidas. Defecto tronco, sucursales y etiquetas valores
se puede anular con las siguientes opciones. Establézcalos en rutas relativas a la URL de origen, o
déjelos en blanco para desactivar la detección automática.

Las siguientes opciones se pueden configurar con --config:

convert.svn.ramas
especificar el directorio que contiene las ramas. El valor predeterminado es sucursales.

convertir.svn.tags
especifique el directorio que contiene las etiquetas. El valor predeterminado es etiquetas.

convertir.svn.trunk
especifique el nombre de la rama troncal. El valor predeterminado es tronco.

convertir.localtimezone
usar la hora local (según lo determinado por la variable de entorno TZ) para el conjunto de cambios
fecha/horas. El valor predeterminado es Falso (usar UTC).

El historial de origen se puede recuperar a partir de una revisión específica, en lugar de ser
convertido integralmente. Solo se admiten conversiones de rama única.

convertir.svn.startrev
especificar el número de revisión de inicio de Subversion. El valor predeterminado es 0.

Git Fuente
El importador de Git convierte confirmaciones de todas las ramas accesibles (refs en refs/heads) y
remotos (refs en refs/remotes) a Mercurial. Las ramas se convierten en marcadores con el
mismo nombre, con los 'refs/heads' principales despojados. Los submódulos de Git se convierten a Git
subrepos en Mercurial.

Las siguientes opciones se pueden configurar con --config:

convert.git.similitud
especificar cómo deben ser los archivos similares modificados en una confirmación para importarse como cambios de nombre o
copias, como porcentaje entre 0 (deshabilitado) y 100 (los archivos deben ser idénticos). Para
ejemplo, 90 significa que un par eliminar/agregar se importará como un cambio de nombre si hay más de
El 90% del archivo no ha cambiado. El valor predeterminado es 50.

convert.git.findcopiasharder
mientras detecta copias, mire todos los archivos en la copia de trabajo en lugar de solo
los cambiados. Esto es muy costoso para proyectos grandes y solo es efectivo cuando
convert.git.similitud es mayor que 0. El valor predeterminado es Falso.

convertir.git.remoteprefix
referencias remotas se convierten como marcadores con convertir.git.remoteprefix como prefijo
seguido por un /. El valor predeterminado es 'remoto'.

convertir.git.skipsubmodules
no convierte archivos .gitmodules de nivel raíz o archivos con el modo 160000 que indica
un submódulo. El valor predeterminado es Falso.

Perforce Fuente
Al importador de Perforce (P4) se le puede dar una ruta de depósito p4 o una especificación de cliente como
fuente. Convertirá todos los archivos en la fuente a un repositorio plano de Mercurial, ignorando
etiquetas, sucursales e integraciones. Tenga en cuenta que cuando se le proporciona una ruta de depósito, generalmente
debe especificar un directorio de destino, porque de lo contrario el destino puede ser nombrado ...-hg.

Las siguientes opciones se pueden configurar con --config:

convertir.p4.codificación
especificar la codificación que se utilizará al decodificar la salida estándar del comando Perforce
herramienta de línea El valor predeterminado es la codificación predeterminada del sistema.

convertir.p4.startrev
especificar la revisión inicial de Perforce (un número de lista de cambios de Perforce).

mercurial Destino
El destino de Mercurial reconocerá los subrepositorios de Mercurial en el destino
directorio y actualice el archivo .hgsubstate automáticamente si el destino
Los subrepositorios contienen el / /.hg/archivo shamap. Convertir un repositorio con
subrepositorios requiere convertir un solo repositorio a la vez, de abajo hacia arriba.

Un ejemplo que muestra cómo convertir un repositorio con subrepositorios:

# así convert conoce el tipo cuando ve un destino no vacío
$ hg init convertido

$ hg convertir orig/sub1 convertido/sub1
$ hg convertir orig/sub2 convertido/sub2
$ hg convertir original convertido

Se admiten las siguientes opciones:

convert.hg.clonramas
Despachar ramas de origen en clones separados. El valor predeterminado es falso.

convertir.hg.tagsbranch
nombre de la rama para las revisiones de etiquetas, el valor predeterminado es tu préstamo estudiantil.

convert.hg.usebranchnames
conservar los nombres de las sucursales. El defecto es cierto.

convert.hg.nombrefuente
registra la cadena dada como un valor adicional 'convert_source' en cada confirmación realizada en
el repositorio de destino. El valor predeterminado es Ninguno.

Todos Destinos
Todos los tipos de destino aceptan las siguientes opciones:

convertir.skiptags
no convierte etiquetas del repositorio de origen al repositorio de destino. El valor predeterminado es
Falso.

Opciones:

--autores
nombre de archivo de asignación de nombre de usuario (OBSOLETO) (utilice --authormap en su lugar)

-s,--tipo de fuente
tipo de repositorio fuente

-D,--tipo de destino
tipo de repositorio de destino

-r,--Rvdo
importar hasta fuente revisión REV

-UN,--autormapa
reasignar nombres de usuario usando este archivo

- mapa de archivos
reasignar nombres de archivo usando el contenido del archivo

--lleno aplique cambios en el mapa de archivos convirtiendo todos los archivos nuevamente

--mapa de empalme
empalmar la historia sintetizada en su lugar

--mapa de sucursales
cambiar los nombres de las sucursales durante la conversión

--clasificación de sucursales
intente ordenar los conjuntos de cambios por ramas

--clasificación de fecha
intente ordenar los conjuntos de cambios por fecha

--origenfuente
conservar el orden de los conjuntos de cambios de origen

--closesort
tratar de reordenar revisiones cerradas

[+] la opción marcada se puede especificar varias veces

eol
gestionar automáticamente las nuevas líneas en los archivos del repositorio

Esta extensión le permite administrar el tipo de finales de línea (CRLF o LF) que se utilizan en
el repositorio y en el directorio de trabajo local. De esa manera puedes obtener terminaciones de línea CRLF
en Windows y LF en Unix/Mac, lo que permite que todos usen los finales de línea nativos de su sistema operativo.

La extensión lee su configuración de un versionado .hgeol archivo de configuración encontrado en
la raíz del directorio de trabajo. El .hgeol archivo utiliza la misma sintaxis que todos los demás
Archivos de configuración de Mercurial. Utiliza dos secciones, [patrones] y [repositorio].

El [patrones] sección especifica cómo se deben convertir los finales de línea entre el trabajo
directorio y el repositorio. El formato se especifica mediante un patrón de archivo. el primer partido
se utiliza, así que ponga patrones más específicos primero. Los finales de línea disponibles son LF, CRLFy
BIN.

Archivos con el formato declarado de CRLF or LF siempre son desprotegidos y almacenados en el
repositorio en ese formato y archivos declarados como binarios (BIN) se dejan sin cambios.
Además, nativo es un alias para verificar en el final de línea predeterminado de la plataforma:
LF en Unix (incluyendo Mac OS X) y CRLF en Windows Tenga en cuenta que BIN (no hacer nada para alinear
finales) es el comportamiento predeterminado de Mercurial; solo es necesario si necesita anular un
más tarde, patrón más general.

La opción [repositorio] La sección especifica los finales de línea que se utilizarán para los archivos almacenados en
el repositorio Tiene un solo ajuste, nativo, que determina los finales de línea de almacenamiento
para archivos declarados como nativo existentes [patrones] sección. Se puede configurar para LF or CRLF.
por defecto es LF. Por ejemplo, esto significa que en Windows, los archivos configurados como nativo (CRLF
por defecto) se convertirá en LF cuando se almacena en el repositorio. Archivos declarados como LF,
CRLFo BIN existentes [patrones] siempre se almacenan tal cual en el repositorio.

Ejemplo versionado .hgeol archivo:

[patrones]
**.py = nativo
**.vcproj = CRLF
**.txt = nativo
Archivo Make = LF
**.jpg = contenedor

[repositorio]
nativo = LF

Nota Las reglas se aplicarán primero cuando los archivos se toquen en el directorio de trabajo, por ejemplo, al
actualizando a nulo y de vuelta a tip para tocar todos los archivos.

La extensión utiliza un opcional [eol] sección leída tanto del Mercurial normal
archivos de configuración y el .hgeol archivo, con este último anulando el primero. Puede
use esa sección para controlar el comportamiento general. Hay tres configuraciones:

· eol.nativo (defecto os.linesep) se puede establecer en LF or CRLF para anular el predeterminado
interpretación de nativo para pagar Esto se puede usar con hg Archivo en Unix, digamos, para
generar un archivo donde los archivos tienen finales de línea para Windows.

· eol.solo-consistente (Verdadero predeterminado) se puede establecer en Falso para hacer que la extensión se convierta
archivos con EOL inconsistentes. Inconsistente significa que hay ambos CRLF y LF presente
en el archivo. Dichos archivos normalmente no se tocan bajo el supuesto de que tienen
EOL mixtos a propósito.

· eol.fix-nueva línea final (Falso predeterminado) se puede establecer en Verdadero para garantizar que los
los archivos terminan con un carácter EOL (ya sea \n or \ R \ n según los patrones configurados).

La extensión proporciona codificación inteligente: y decodificación inteligente: filtros como el obsoleto
la extensión win32text lo hace. Esto significa que puede deshabilitar win32text y habilitar eol y
sus filtros seguirán funcionando. Solo necesita estos filtros hasta que haya preparado un
.hgeol archivo.

El win32text.prohibir* ganchos proporcionados por la extensión win32text se han unificado en un
gancho único llamado eol.checkheadhook. El gancho buscará los finales de línea esperados de
las .hgeol archivo, lo que significa que debe migrar a un .hgeol primero el archivo antes de usar el
gancho. eol.checkheadhook solo comprueba cabezas, se enviarán revisiones intermedias no válidas.
Para prohibirlos por completo, utilice el eol.checkallhook gancho. Estos ganchos se utilizan mejor como
grupopretxnchange manos.

See hg ayuda . para obtener más información sobre los patrones globales utilizados.

extdiff
comando para permitir que programas externos comparen revisiones

La extensión extdiff Mercurial le permite usar programas externos para comparar revisiones,
o revisión con el directorio de trabajo. Los programas diferenciales externos se llaman con un
conjunto configurable de opciones y dos argumentos que no son opciones: rutas a directorios que contienen
Instantáneas de archivos para comparar.

La extensión extdiff también le permite configurar nuevos comandos diff, por lo que no necesita
digitar hg extdiff -p kdiff3 siempre.

[diffext]
# agregar un nuevo comando que ejecute GNU diff(1) en modo 'diferencia de contexto'
cdiff = gdiff-Nprc5
## o a la antigua:
#cmd.cdiff = gdiff
#opts.cdiff = -Nprc5

# agregue un nuevo comando llamado meld, ejecuta meld (no es necesario nombrarlo dos veces). Si
# el ejecutable Meld no está disponible, la herramienta Meld en [merge-tools]
# se usará, si está disponible
fusionar =

# agregue un nuevo comando llamado vimdiff, ejecute gvimdiff con el complemento DirDiff
# (ver http://www.vim.org/scripts/script.php?script_id=102) No
# Usuario inglés, asegúrese de poner "let g:DirDiffDynamicDiffText = 1" en
# tu .vimrc
vimdiff = gvim -f "+siguiente" \
"+ejecutar 'DirDiff' fnameescape(argv(0)) nombreescape(argv(1)) "

Los argumentos de la herramienta pueden incluir variables que se expanden en tiempo de ejecución:

$parent1, $plabel1 - nombre de archivo, etiqueta descriptiva del primer padre
$child, $clabel - nombre de archivo, etiqueta descriptiva de revisión secundaria
$parent2, $plabel2 - nombre de archivo, etiqueta descriptiva del segundo padre
$root - raíz del repositorio
$parent es un alias para $parent1.

La extensión extdiff buscará diferencias en las secciones [diff-tools] y [merge-tools]
argumentos de herramienta, cuando no se especifica ninguno en [extdiff].

[diffext]
kdiff3 =

[herramientas diferenciales]
kdiff3.diffargs=--L1 '$etiqueta1' --L2 '$etiqueta' $principal $secundario

Puede usar -I/-X y una lista de nombres de archivos o directorios como de costumbre hg diff mando. los
La extensión extdiff crea instantáneas solo de los archivos necesarios, por lo que ejecutar el diff externo
programa será bastante rápido (al menos más rápido que tener que comparar todo el
árbol).

Comandos
extdiff
use un programa externo para diferenciar el repositorio (o archivos seleccionados):

hg extdiff [OPT] ... [ARCHIVO] ...

Muestra las diferencias entre las revisiones de los archivos especificados, utilizando un programa externo. los
El programa predeterminado utilizado es diff, con opciones predeterminadas "-Npru".

Para seleccionar un programa diferente, use la opción -p/--program. El programa se aprobará el
nombres de dos directorios para comparar. Para pasar opciones adicionales al programa, utilice
-o/--opción. Estos se pasarán antes de los nombres de los directorios a comparar.

Cuando se dan dos argumentos de revisión, se muestran los cambios entre esas revisiones. Si
solo se especifica una revisión, luego esa revisión se compara con el directorio de trabajo,
y, cuando no se especifican revisiones, los archivos del directorio de trabajo se comparan con su
padre.

Opciones:

-pag,--programa
programa de comparación para ejecutar

-Oh,--opción
pasar la opción al programa de comparación

-r,--Rvdo
revisión

-C,--cambio
cambio realizado por revisión

--parche
comparar parches para dos revisiones

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-S, --subrepos
recurrir a subrepositorios

[+] la opción marcada se puede especificar varias veces

factótum
autenticación http con factotum

Esta extensión permite que la factótum(4) instalación en el Plan 9 desde las plataformas de Bell Labs hasta
proporcionar información de autenticación para el acceso HTTP. Entradas de configuración especificadas en el
sección de autenticación, así como la información de autenticación proporcionada en la URL del repositorio son
totalmente compatible. Si no se especifica ningún prefijo, se asumirá un valor de "*".

De forma predeterminada, las claves se especifican como:

proto=pasar servicio=prefijo hg= usuario= !contraseña=

Si la extensión factotum no puede leer la clave requerida, se solicitará una
interactivamente.

Hay una sección de configuración disponible para personalizar el comportamiento del tiempo de ejecución. Por defecto, estos
las entradas son:

[factótum]
ejecutable = /bin/auth/factotum
punto de montaje = /mnt/factotum
servicio = peso

La entrada ejecutable define la ruta completa al binario factotum. La entrada del punto de montaje
define la ruta al servicio de archivos factotum. Por último, la entrada de servicio controla la
nombre de servicio utilizado al leer claves.

ha podido recuperar
extraiga, actualice y fusione en un solo comando (DEPRECATED)

Comandos
ha podido recuperar
extraiga cambios de un repositorio remoto, fusione nuevos cambios si es necesario.:

hg buscar [FUENTE]

Esto encuentra todos los cambios del repositorio en la ruta o URL especificada y los agrega a
el repositorio local.

Si los cambios extraídos agregan una nueva cabecera de rama, la cabecera se fusiona automáticamente y el
se confirma el resultado de la fusión. De lo contrario, el directorio de trabajo se actualiza para incluir
los nuevos cambios.

Cuando se necesita una fusión, el directorio de trabajo se actualiza primero al recién extraído
cambios. A continuación, los cambios locales se fusionan con los cambios extraídos. Para cambiar el orden de fusión,
use --switch-padre.

See hg ayuda fechas para obtener una lista de formatos válidos para la fecha -d / -.

Devuelve 0 en caso de éxito.

Opciones:

-r,--Rvdo
una revisión específica que le gustaría sacar

-mi, --editar
invocar editor en mensajes de confirmación

--fuerza-editor
editar mensaje de confirmación (DEPRECATED)

- padre-conmutador
cambiar de padres al fusionarse

-metro,--mensaje
usar texto como mensaje de confirmación

-yo,--archivo de registro
leer el mensaje de confirmación del archivo

-D,--fecha
registrar la fecha especificada como fecha de compromiso

-tu,--usuario
registrar al usuario especificado como confirmador

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

[+] la opción marcada se puede especificar varias veces

gpg
comandos para firmar y verificar conjuntos de cambios

Comandos
sigcheck
verificar todas las firmas que pueda haber para una revisión en particular:

hg sigcheck REV

verificar todas las firmas que pueda haber para una revisión en particular

firmar
agregue una firma para la revisión actual o dada:

signo hg [OPCIÓN]... [REV]...

Si no se proporciona revisión, se utiliza el directorio principal del directorio de trabajo, o la sugerencia si no
la revisión está desprotegida.

El gpg.cmd La configuración de configuración se puede utilizar para especificar el comando que se ejecutará. Una clave predeterminada puede ser
especificado con clave.gpg.

See hg ayuda fechas para obtener una lista de formatos válidos para la fecha -d / -.

Opciones:

-yo, --local
hacer la firma local

-F, --fuerza
firmar incluso si se modifica el archivo de firma

--no comprometerse
no confirme el archivo de firma después de firmar

-k,--llave
la clave de identificación para firmar con

-metro,--mensaje
usar texto como mensaje de confirmación

-mi, --editar
invocar editor en mensajes de confirmación

-D,--fecha
registrar la fecha especificada como fecha de compromiso

-tu,--usuario
registrar al usuario especificado como confirmador

sigs
lista de conjuntos de cambios firmados:

hg firmas

lista de conjuntos de cambios firmados

registro gráfico
comando para ver gráficos de revisión desde un shell (DEPRECATED)

La funcionalidad de esta extensión se ha incluido en el núcleo de Mercurial desde la versión 2.3.
Por favor, use hg log -G ... preferiblemente.

Esta extensión agrega una opción --graph a los comandos entrantes, salientes y de registro. Cuando esto
opciones, también se muestra una representación ASCII del gráfico de revisión.

Comandos
espino
mostrar el historial de revisión junto con un gráfico de revisión ASCII:

hg glog [OPCIÓN]... [ARCHIVO]

Imprima un historial de revisión junto con un gráfico de revisión dibujado con caracteres ASCII.

Los nodos impresos como un carácter @ son padres del directorio de trabajo.

Este es un alias para hg log -G.

Opciones:

-F, --seguir
seguir el historial de conjuntos de cambios o el historial de archivos a través de copias y cambios de nombre

- seguir primero
solo siga al primer padre de los conjuntos de cambios de combinación (DESACTIVADO)

-D,--fecha
mostrar las revisiones que coinciden con la especificación de la fecha

-VS, --copias
mostrar archivos copiados

-k,--palabra clave
realizar una búsqueda que no distinga entre mayúsculas y minúsculas para un texto dado

-r,--Rvdo
muestra la revisión o el conjunto de revoluciones especificado

--remoto
incluir revisiones donde se eliminaron los archivos

-metro, --sólo se fusiona
mostrar solo fusiones (DESACTIVADO)

-tu,--usuario
revisiones cometidas por el usuario

--sólo rama
mostrar solo conjuntos de cambios dentro de la rama con nombre dada (DEPRECATED)

-B,--rama
mostrar conjuntos de cambios dentro de la rama nombrada dada

-PAG,--ciruela pasa
no muestran revisión ni ninguno de sus antepasados

-pag, --parche
mostrar parche

-gramo, --git
usar el formato de diferencia extendida de git

-yo,--límite
limitar el número de cambios mostrados

-METRO, --no se fusiona
no mostrar fusiones

--estat resumen de cambios de estilo diffstat de salida

-GRAMO, --grafico
mostrar la revisión DAG

--estilo
mostrar usando el archivo de mapa de plantilla (DEPRECATED)

-T,--plantilla
mostrar con plantilla

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

hgcia
ganchos para integrarse con el servicio de notificación CIA.vc

Esto está destinado a ejecutarse como un grupo de cambio o gancho entrante. Para configurarlo, configure el
siguientes opciones en su hgrc:

[cia]
# su nombre de usuario registrado en la CIA
usuario = foo
# el nombre del proyecto en CIA
proyecto = foo
# el módulo (subproyecto) (opcional)
#módulo = foo
# Agregar un diffstat al mensaje de registro (opcional)
#diffstat = Falso
# Plantilla a usar para mensajes de registro (opcional)
#template = {desc}\n{baseurl}{webroot}/rev/{node}-- {diffstat}
# Estilo a usar (opcional)
#estilo = foo
# La URL del servicio de notificación de la CIA (opcional)
# Puede usar mailto: URL para enviar por correo electrónico, por ejemplo
# mailto:[email protected]
# Asegúrese de configurar email.from si hace esto.
#url = http://cia.vc/
# imprimir mensaje en lugar de enviarlo (opcional)
#prueba = Falso
# número de barras para eliminar las rutas de URL
#tira = 0

[manos]
# uno de estos:
changegroup.cia = python:hgcia.hook
#entrante.cia = python:hgcia.hook

[web]
# Si desea hipervínculos (opcional)
URL base = http://server/path/to/repo

hgk
navegar por el repositorio de forma gráfica

La extensión hgk permite navegar por el historial de un repositorio de forma gráfica. Eso
requiere Tcl/Tk versión 8.4 o posterior. (Tcl/Tk no se distribuye con Mercurial).

hgk consta de dos partes: un script Tcl que muestra y consulta
información y una extensión de Mercurial llamada hgk.py, que proporciona ganchos para que hgk
obtener información. hgk se puede encontrar en el directorio contrib, y la extensión se envía
en el repositorio hgext y debe habilitarse.

El hg view El comando iniciará el script hgk Tcl. Para que este comando funcione, hgk debe ser
en su ruta de búsqueda. Alternativamente, puede especificar la ruta a hgk en su configuración
archivo:

[hk]
ruta = /ubicación/de/hgk

hgk puede hacer uso de la extensión extdiff para visualizar revisiones. Asumiendo que tuviste
comando extdiff vdiff ya configurado, simplemente agregue:

[hk]
vdiff=vdiff

El menú contextual de Revisiones ahora mostrará entradas adicionales para activar vdiff al pasar el mouse y
revisiones seleccionadas.

Comandos
view
iniciar el visor de historial interactivo:

vista hg [-l LÍMITE] [RANGO REVERSIBLE]

iniciar visor de historial interactivo

Opciones:

-yo,--límite
limitar el número de cambios mostrados

destacar
resaltado de sintaxis para hgweb (requiere Pygments)

Depende de la biblioteca de resaltado de sintaxis de Pygments: http://pygments.org/

Existen las siguientes opciones de configuración:

[web]
pigmentos_estilo = (default: colorful)
resaltar archivos = (predeterminado: tamaño('<5M'))
resaltar solo el nombre del archivo de coincidencia = (por defecto Falso)

resaltarsolocoincidir con el nombre del archivo solo resaltará archivos si su tipo puede ser identificado por
su nombre de archivo. Cuando esto no está habilitado (el valor predeterminado), Pygments hará todo lo posible para
identificar el tipo de archivo a partir del contenido y cualquier coincidencia (incluso coincidencias con un nivel de confianza bajo)
puntuación) se utilizará.

historia
edición de historia interactiva

Con esta extensión instalada, Mercurial obtiene un nuevo comando: histedit. El uso es como
sigue, asumiendo la siguiente historia:

@ 3[consejo] 7c2fd3b9020c 2009-04-27 18:04 -0500 durante42
| Agregar delta
|
o 2 030b686bedc4 2009-04-27 18:04 -0500 durante42
| Agregar gamma
|
o 1 c561b4e977df 2009-04-27 18:04 -0500 durante42
| Añadir versión beta
|
o 0 d8d2fcd0e319 2009-04-27 18:04 -0500 durante42
Agregar alfa

Si tuvieras que correr hg historia c561b4e977df, verá el siguiente archivo abierto en su
editor:

elegir c561b4e977df Agregar beta
elegir 030b686bedc4 Agregar gamma
pick 7c2fd3b9020c Agregar delta

# Editar historial entre c561b4e977df y 7c2fd3b9020c
#
# Las confirmaciones se enumeran de menos a más reciente
#
# Comandos:
# p, elegir = usar confirmación
# e, edit = use commit, pero deténgase para modificar
# f, fold = usa commit, pero combínalo con el de arriba
# r, roll = like fold, pero descarta la descripción de este commit
# d, soltar = eliminar la confirmación del historial
# m, mess = editar mensaje de confirmación sin cambiar el contenido de la confirmación
#

En este archivo, las líneas que comienzan con # son ignorados. Debe especificar una regla para cada
revisión en su historial. Por ejemplo, si hubiera querido agregar gamma antes de beta, y luego
quería agregar delta en la misma revisión que beta, reorganizaría el archivo para que se vea
Me gusta esto:

elegir 030b686bedc4 Agregar gamma
elegir c561b4e977df Agregar beta
doblar 7c2fd3b9020c Agregar delta

# Editar historial entre c561b4e977df y 7c2fd3b9020c
#
# Las confirmaciones se enumeran de menos a más reciente
#
# Comandos:
# p, elegir = usar confirmación
# e, edit = use commit, pero deténgase para modificar
# f, fold = usa commit, pero combínalo con el de arriba
# r, roll = like fold, pero descarta la descripción de este commit
# d, soltar = eliminar la confirmación del historial
# m, mess = editar mensaje de confirmación sin cambiar el contenido de la confirmación
#

En ese momento cierras el editor y historia comienza a trabajar Cuando especifica un doblez
operación, historia abrirá un editor cuando integre esas revisiones, ofreciendo
tienes la oportunidad de limpiar el mensaje de confirmación:

Añadir versión beta
***
Agregar delta

Edite el mensaje de confirmación a su gusto, luego cierre el editor. Para este ejemplo, vamos
supongamos que el mensaje de confirmación se cambió a Añada beta y delta. Después de que se haya ejecutado hisedit
y tuvo la oportunidad de eliminar las revisiones antiguas o temporales que necesitaba, el historial parece
Me gusta esto:

@ 2[consejo] 989b4d060121 2009-04-27 18:04 -0500 durante42
| Añadir beta y delta.
|
o 1 081603921c3f 2009-04-27 18:04 -0500 durante42
| Agregar gamma
|
o 0 d8d2fcd0e319 2009-04-27 18:04 -0500 durante42
Agregar alfa

Tenga en cuenta que historiano eliminar cualquier revisión (incluso las propias temporales) hasta después
ha completado todas las operaciones de edición, por lo que probablemente realizará varias tiras
operaciones cuando haya terminado. Para el ejemplo anterior, tuvo que ejecutar strip dos veces. La tira puede ser
lento dependiendo de una variedad de factores, por lo que es posible que deba ser un poco paciente. Puede
elegir mantener las revisiones originales pasando el --guardar bandera.

El editar la operación lo llevará de regreso a un símbolo del sistema, lo que le permitirá editar archivos
libremente, o incluso usar hg grabar para confirmar algunos cambios como una confirmación separada. Cuando estas
hecho, los cambios restantes no confirmados también se confirmarán. Cuando haya terminado, ejecute hg
historia --Seguir para terminar este paso. Se le pedirá un nuevo mensaje de confirmación, pero
el mensaje de confirmación predeterminado será el mensaje original para el editar revisión editorial.

El mensaje operación le dará la oportunidad de revisar un mensaje de compromiso sin cambiar
los contenidos. Es un atajo para hacer editar seguido inmediatamente por hg historia
--continuar`.

If historia encuentra un conflicto al mover una revisión (mientras maneja recoger or doblez),
se detendrá de manera similar a editar con la diferencia de que no le solicitará un
confirmar el mensaje cuando haya terminado. Si decide en este punto que no le gusta cuánto trabajo
será para reorganizar la historia, o que cometió un error, puede utilizar hg historia --abortar
abandonar los nuevos cambios que ha realizado y volver al estado anterior al intento de
edita tu historial.

Si clonamos el repositorio de ejemplo editado anteriormente y agregamos cuatro cambios más, de modo que
tenemos la siguiente historia:

@ 6[consejo] 038383181893 2009-04-27 18:04 -0500 stefan
| Añadir theta
|
o 5 140988835471 2009-04-27 18:04 -0500 stefan
| Añadir eta
|
o 4 122930637314 2009-04-27 18:04 -0500 stefan
| Agregar zeta
|
o 3 836302820282 2009-04-27 18:04 -0500 stefan
| Añadir épsilon
|
o 2 989b4d060121 2009-04-27 18:04 -0500 durante42
| Añadir beta y delta.
|
o 1 081603921c3f 2009-04-27 18:04 -0500 durante42
| Agregar gamma
|
o 0 d8d2fcd0e319 2009-04-27 18:04 -0500 durante42
Agregar alfa

Si tu corres hg historia --extrovertido en el clon entonces es lo mismo que ejecutar hg historia
836302820282. Si necesita un plan para enviar a un repositorio que Mercurial no detecta para
estar relacionado con el repositorio de origen, puede agregar un --fuerza .

Config
Las líneas de regla Histedit se truncan a 80 caracteres de forma predeterminada. Puedes personalizar esto
comportamiento estableciendo una longitud diferente en su archivo de configuración:

[histeditar]
linelen = 120 # líneas de reglas truncadas en 120 caracteres

hg historia intenta elegir automáticamente una revisión base apropiada para usar. Para
cambie qué revisión base se usa, defina un conjunto de revisiones en su archivo de configuración:

[histeditar]
defaultrev = solo(.) & borrador()

De forma predeterminada, cada revisión editada debe estar presente en los comandos histedit. Para eliminar
revisión que necesita usar caer operación. Puede configurar la caída para que sea implícita para
faltan confirmaciones agregando:

[histeditar]
dropmissing = Verdadero

Comandos
historia
edite interactivamente el historial de conjuntos de cambios:

hg histedit [OPCIONES] ([ANCESTOR] | --outgoing [URL])

Este comando le permite editar una serie lineal de conjuntos de cambios (hasta e incluyendo el trabajo
directorio, que debe estar limpio). Puede:

· recoger para [re]ordenar un conjunto de cambios

· caer para omitir conjunto de cambios

· lío para reformular el mensaje de confirmación del conjunto de cambios

· doblez para combinarlo con el conjunto de cambios anterior

· rodar como fold, pero descartando la descripción de este commit

· editar para editar este conjunto de cambios

Hay varias formas de seleccionar el conjunto de cambios raíz:

· Especificar ANCESTOR directamente

· Use --outgoing -- será el primer conjunto de cambios lineales no incluido en el destino.
(Véase hg ayuda config.predeterminado-push)

· De lo contrario, el valor de la opción de configuración "histedit.defaultrev" se utiliza como un revset para
seleccione la revisión base cuando no se especifica ANCESTOR. La primera revisión devuelta por
se utiliza el revset. De forma predeterminada, esto selecciona el historial editable que es único para el
ascendencia del directorio de trabajo.

Si usa --outgoing, este comando se anulará si hay revisiones salientes ambiguas.
Por ejemplo, si hay varias sucursales que contienen revisiones salientes.

Use "min(outgoing() and ::.)" o una especificación similar de revset en lugar de --outgoing to
especifique la revisión de destino de edición exactamente en una situación tan ambigua. Ver hg ayuda revoluciones para
detalles sobre la selección de revisiones.

Ejemplos:

· Se han realizado una serie de cambios. La revisión 3 ya no es necesaria.

Iniciar la edición del historial desde la revisión 3:

hg histedit -r 3

Se abre un editor que contiene la lista de revisiones, con acciones específicas especificadas:

pick 5339bf82f0ca 3 Zworgle el foobar
pick 8ef592ce7cc4 4 Deslumbra al zerlog
pick 0a9639fcda9d 5 Morgificar la cromulancia

La información adicional sobre las posibles acciones a tomar aparece debajo de la lista de
revisiones.

Para eliminar la revisión 3 del historial, su acción (al comienzo de la correspondiente
line) se cambia a 'soltar':

soltar 5339bf82f0ca 3 Zworgle el foobar
pick 8ef592ce7cc4 4 Deslumbra al zerlog
pick 0a9639fcda9d 5 Morgificar la cromulancia

· Se han realizado una serie de cambios. Las revisiones 2 y 4 deben intercambiarse.

Iniciar la edición del historial desde la revisión 2:

hg histedit -r 2

Se abre un editor que contiene la lista de revisiones, con acciones específicas especificadas:

elegir 252a1af424ad 2 Blorb un morgwazzle
pick 5339bf82f0ca 3 Zworgle el foobar
pick 8ef592ce7cc4 4 Deslumbra al zerlog

Para intercambiar las revisiones 2 y 4, sus líneas se intercambian en el editor:

pick 8ef592ce7cc4 4 Deslumbra al zerlog
pick 5339bf82f0ca 3 Zworgle el foobar
elegir 252a1af424ad 2 Blorb un morgwazzle

Devuelve 0 en caso de éxito, 1 si se requiere la intervención del usuario (no solo para "edición" intencional
comando, sino también para resolver conflictos inesperados).

Opciones:

--comandos
leer las ediciones del historial del archivo especificado

-C, --Seguir
continuar una edición ya en curso

--editar-plan
editar la lista de acciones restantes

-k, --guardar
no elimine los nodos antiguos una vez completada la edición

--abortar
abortar una edición en curso

-Oh, --extrovertido
conjuntos de cambios no encontrados en el destino

-F, --fuerza
forzar la salida incluso para repositorios no relacionados

-r,--Rvdo
primera revisión para ser editada

[+] la opción marcada se puede especificar varias veces

keyword
expandir palabras clave en archivos de seguimiento

Esta extensión expande $Palabras clave$ similares a RCS/CVS o personalizadas en archivos de texto rastreado
seleccionado por su configuración.

Las palabras clave solo se expanden en los repositorios locales y no se almacenan en el historial de cambios. los
mecanismo puede ser considerado como una conveniencia para el usuario actual o para el archivo
distribución.

Las palabras clave se expanden a los datos del conjunto de cambios pertenecientes al último cambio en relación con el
directorio de trabajo padre de cada archivo.

La configuración se realiza en las secciones [keyword], [keywordset] y [keywordmaps] de hgrc
archivos.

Ejemplo:

[palabra clave]
# expandir palabras clave en todos los archivos de python excepto aquellos que coincidan con "x*"
**.py =
x* = ignorar

[conjunto de palabras clave]
# preferir svn- sobre mapas de palabras clave predeterminados similares a cvs
svn = Verdadero

Nota Cuanto más específico sea en sus patrones de nombre de archivo, menos perderá velocidad en grandes
repositorios.

Para [keywordmaps] mapeo de plantilla y ejecución de demostración y control de expansión hg kdemo.
See hg ayuda plantillas para obtener una lista de plantillas y filtros disponibles.

Se proporcionan tres filtros de plantilla de fecha adicionales:

Fecha de actualización

"2006/09/18 15:13:13"

svnutcdate

"2006-09-18 15:13:13Z"

svnisodato

"2006-09-18 08:13:13 -700 (lunes, 18 de septiembre de 2006)"

Las asignaciones de plantillas predeterminadas (ver con hg kdemo -d) se puede reemplazar con personalizado
palabras clave y plantillas. De nuevo, corre hg kdemo para controlar los resultados de su configuración
cambios.

Antes de cambiar/deshabilitar palabras clave activas, debe ejecutar hg kwshrink para evitar almacenar
palabras clave ampliadas en el historial de cambios.

Para forzar la expansión después de habilitarla, o un cambio de configuración, ejecute hg kwexpandir.

Las expansiones que abarcan más de una línea y las expansiones incrementales, como $Log$ de CVS, son
No soportado. Un mapa de plantilla de palabra clave "Log = {desc}" se expande a la primera línea del
descripción del conjunto de cambios.

Comandos
kdemo
imprimir [keywordmaps] configuración y un ejemplo de expansión:

hg kwdemo [-d] [-f RCFILE] [MAPA DE PLANTILLA]...

Muestra mapas de plantillas de palabras clave actuales, personalizadas o predeterminadas y sus expansiones.

Amplíe la configuración actual especificando mapas como argumentos y usando -f/--rcfile para
obtener un archivo hgrc externo.

Use -d/--default para deshabilitar la configuración actual.

See hg ayuda plantillas para obtener información sobre plantillas y filtros.

Opciones:

-D, --defecto
mostrar mapas de plantillas de palabras clave predeterminadas

-F,--rcarchivo
leer mapas desde rcfile

kwexpandir
expandir palabras clave en el directorio de trabajo:

hg kwexpand [OPCIÓN]... [ARCHIVO]...

Ejecutar después de (re)habilitar la expansión de palabras clave.

kwexpand se niega a ejecutarse si los archivos dados contienen cambios locales.

Opciones:

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

archivos kw
mostrar archivos configurados para la expansión de palabras clave:

hg kwfiles [OPCIÓN]... [ARCHIVO]...

Enumere qué archivos en el directorio de trabajo coinciden con la configuración [palabra clave]
.

Útil para evitar la expansión inadvertida de palabras clave y para acelerar la ejecución al incluir
solo los archivos que son candidatos reales para la expansión.

See hg ayuda keyword sobre cómo construir patrones tanto para la inclusión como para la exclusión de
archivos.

Con -A/--all y -v/--verbose los códigos utilizados para mostrar el estado de los archivos son:

K = candidato de expansión de palabra clave
k = candidato de expansión de palabra clave (no rastreado)
Yo = ignorado
i = ignorado (no rastreado)

Opciones:

-UN, --todas
mostrar indicadores de estado de palabra clave de todos los archivos

-I, --ignorar
mostrar archivos excluidos de la expansión

-tu, --desconocido
solo mostrar archivos desconocidos (no rastreados)

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

kwshrink
revertir palabras clave expandidas en el directorio de trabajo:

hg kwshrink [OPCIÓN]... [ARCHIVO]...

Debe ejecutarse antes de cambiar/deshabilitar las palabras clave activas.

kwshrink se niega a ejecutarse si los archivos dados contienen cambios locales.

Opciones:

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

archivos grandes
rastrear archivos binarios grandes

Los archivos binarios grandes tienden a no ser muy comprimibles, no muy diferenciables y nada
fusionable Dichos archivos no son manejados de manera eficiente por el formato de almacenamiento de Mercurial (revlog),
que se basa en deltas binarios comprimidos; almacenar archivos binarios grandes como de costumbre
Los archivos de Mercurial desperdician ancho de banda y espacio en disco y aumentan el uso de memoria de Mercurial.
La extensión largefiles soluciona estos problemas al agregar un cliente-servidor centralizado
capa encima de Mercurial: los archivos grandes viven en un central tienda en la red
en algún lugar, y solo busca las revisiones que necesita cuando las necesita.

largefiles funciona manteniendo un "archivo suplente" en .hglf/ para cada archivo grande. los
los suplentes son pequeños (41 bytes: un hash SHA-1 más una nueva línea) y son rastreados por Mercurial.
Las revisiones de archivos grandes se identifican por el hash SHA-1 de su contenido, que se escribe
al suplente. largefiles usa ese ID de revisión para obtener/poner revisiones de archivos grandes de/a
la tienda central. Esto ahorra espacio en disco y ancho de banda, ya que no necesita
recupere todas las revisiones históricas de archivos grandes cuando clone o extraiga.

Para iniciar un nuevo repositorio o agregar nuevos archivos binarios grandes, simplemente agregue --large a su hg add
mando. Por ejemplo:

$ dd if=/dev/urandom of=recuento de datos aleatorios=2000
$ hg agregar --grandes datos aleatorios
$ hg commit -m 'agregar datos aleatorios como un archivo grande'

Cuando empuja un conjunto de cambios que agrega/modifica archivos grandes a un repositorio remoto, su
Las revisiones de archivos grandes se cargarán junto con él. Tenga en cuenta que el Mercurial remoto debe
también tenga habilitada la extensión largefiles para que esto funcione.

Cuando extrae un conjunto de cambios que afecta a archivos grandes desde un repositorio remoto, los archivos grandes
porque el conjunto de cambios no se desplegará de forma predeterminada. Sin embargo, cuando actualiza a tal
revisión, todos los archivos grandes necesarios para esa revisión se descargan y almacenan en caché (si tienen
nunca se ha descargado antes). Una forma de extraer archivos grandes cuando se extraen es usar
--update, que actualizará su copia de trabajo a la última revisión extraída (y por lo tanto
descargando nuevos archivos grandes).

Si desea extraer archivos grandes que aún no necesita actualizar, puede usar la extracción con
las --lfrev opción o el hg si tirar mando.

Si sabe que está accediendo desde una ubicación no predeterminada y desea descargar todos los
archivos grandes que corresponden a los nuevos conjuntos de cambios al mismo tiempo, luego puede extraer con
--lfrev "tirado()".

Si solo quiere asegurarse de que tendrá los archivos grandes necesarios para fusionar o reorganizar
con nuevas cabezas que estás tirando, entonces puedes tirar con --lfrev "cabeza (tirada ())" bandera
para descargar de forma preventiva cualquier archivo grande que sea nuevo en las cabezas que está extrayendo.

Tenga en cuenta que es posible que ahora se requiera acceso a la red para actualizar los conjuntos de cambios que tiene
no actualizado previamente a. La naturaleza de la extensión de archivos grandes significa que la actualización es
ya no se garantiza que sea una operación solo local.

Si ya tiene archivos grandes rastreados por Mercurial sin la extensión largefiles, puede
necesitará convertir su repositorio para poder beneficiarse de los archivos grandes. Esto esta hecho
con el hg convertir mando:

$ hg lfconvert --size 10 repositorio antiguo repositorio nuevo

En repositorios que ya tienen archivos grandes, cualquier archivo nuevo de más de 10 MB
se agregará automáticamente como un archivo grande. Para cambiar este umbral, configure archivos grandes.minsize in
su archivo de configuración de Mercurial al tamaño mínimo en megabytes para rastrear como un archivo grande, o
use la opción --lfsize para el comando agregar (también en megabytes):

[archivos grandes]
tamaño mínimo = 2

$ hg agregar --lfsize 2

El archivos grandes.patrones La opción de configuración le permite especificar una lista de patrones de nombre de archivo
(consulta: hg ayuda .) que siempre se debe rastrear como archivos grandes:

[archivos grandes]
patrones =
* .jpg
re:.*\.(png|bmp)$
biblioteca.zip
contenido/audio/*

Los archivos que coincidan con uno de estos patrones se agregarán como archivos grandes independientemente de su
El Tamaño.

El archivos grandes.minsize y archivos grandes.patrones las opciones de configuración serán ignoradas para cualquier
repositorios que aún no contienen un archivo grande. Para agregar el primer archivo grande a un
repositorio, debe hacerlo explícitamente con la marca --large pasada al hg add mando.

Comandos
convertir
convertir un repositorio normal en un repositorio de archivos grandes:

hg lfconvert ORIGEN DEST [ARCHIVO ...]

Convierta el repositorio SOURCE en un nuevo repositorio DEST, idéntico a SOURCE excepto que
ciertos archivos se convertirán como archivos grandes: específicamente, cualquier archivo que coincida con cualquier
PATRÓN or cuyo tamaño está por encima del umbral de tamaño mínimo se convierte como un archivo grande. los
tamaño utilizado para determinar si rastrear o no un archivo como un archivo grande es el tamaño del
primera versión del archivo. El tamaño mínimo se puede especificar con --size o en
configuración como archivos grandes.tamaño.

Después de ejecutar este comando, deberá asegurarse de que los archivos grandes estén habilitados en cualquier lugar
tiene la intención de impulsar el nuevo repositorio.

Use --to-normal para convertir archivos grandes a archivos normales; después de esto, el DEST
El repositorio se puede usar sin archivos grandes.

Opciones:

-s,--Talla
tamaño mínimo (MB) para que los archivos se conviertan como archivos grandes

--a-normal
convertir de un repositorio de archivos grandes a un repositorio normal

si tirar
extraiga archivos grandes para las revisiones especificadas de la fuente especificada:

hg lfpull -r REV... [-e CMD] [--remotecmd CMD] [FUENTE]

Extraiga archivos grandes a los que se hace referencia desde conjuntos de cambios locales pero que faltan localmente, extrayendo
desde un repositorio remoto a la memoria caché local.

Si se omite SOURCE, se utilizará la ruta 'predeterminada'. Ver hg ayuda urls
información.

Algunos ejemplos:

· extraer archivos grandes para todas las sucursales:

hg lfpull -r "cabeza() y no cerrado()"

· extraer archivos grandes en la rama predeterminada:

hg lfpull -r "rama (predeterminado)"

Opciones:

-r,--Rvdo
extraer archivos grandes para estas revisiones

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

[+] la opción marcada se puede especificar varias veces

mq
administrar una pila de parches

Esta extensión le permite trabajar con una pila de parches en un repositorio de Mercurial. se las arregla
dos pilas de parches: todos los parches conocidos y parches aplicados (subconjunto de parches conocidos).

Los parches conocidos se representan como archivos de parches en el directorio .hg/patches. parches aplicados
son archivos de parches y conjuntos de cambios.

Tareas comunes (uso hg ayuda comando para más detalles):

crear nuevo parche qnuevo
importar parche existente qimport

serie de parches de impresión qseries
imprimir parches aplicados qapplied

agregue un parche conocido a la pila qpush aplicada
eliminar el parche de la pila aplicada qpop
actualizar el contenido del parche aplicado superior qrefresh

De forma predeterminada, mq utilizará automáticamente los parches de git cuando sea necesario para evitar perder el modo de archivo.
cambios, copiar registros, creación o eliminación de archivos binarios o archivos vacíos. Este comportamiento
se puede configurar con:

[mq]
git = auto/mantener/sí/no

Si se establece en 'mantener', mq obedecerá la configuración de la sección [diff] mientras conserva la configuración existente.
git parches en qrefresh. Si se establece en 'sí' o 'no', mq anulará la sección [diff]
y siempre genere parches git o regulares, posiblemente perdiendo datos en el segundo caso.

Puede ser deseable que los conjuntos de cambios de mq se mantengan en la fase secreta (ver hg ayuda fases),
que se puede habilitar con la siguiente configuración:

[mq]
secreto = verdadero

De manera predeterminada, administrará una cola de parches llamada "parches". Puedes crear otros,
colas de parches independientes con el hg hacer cola mando.

Si el directorio de trabajo contiene archivos no confirmados, qpush, qpop y qgoto abort
inmediatamente. Si se usa -f/--force, los cambios se descartan. Ajuste:

[mq]
guardarcambios = Verdadero

haga que se comporten como si se hubieran pasado --keep-changes, y los cambios locales no conflictivos
ser tolerado y preservado. Si hay opciones incompatibles como -f/--force o --exact
pasado, esta configuración se ignora.

Esta extensión solía proporcionar un comando de tira. Este comando ahora vive en la franja
extensión.

Comandos
qaplicado
imprimir los parches ya aplicados:

hg qaplicado [-1] [-s] [PARCHE]

Devuelve 0 en caso de éxito.

Opciones:

-1, --último
mostrar solo el parche aplicado anterior

-s, --resumen
imprimir la primera línea del encabezado del parche

qclonar
clonar el repositorio principal y el de parches al mismo tiempo:

hg qclone [OPCIÓN]... FUENTE [DEST]

Si el origen es local, el destino no tendrá parches aplicados. Si la fuente es remota, esta
El comando no puede verificar si los parches se aplican en la fuente, por lo que no puede garantizar que los parches
no se aplican en destino. Si clona un repositorio remoto, asegúrese antes de que tenga
no se aplicaron parches.

El repositorio de parches de origen se busca en /.hg/parches por defecto. Utilice -p para
a través del cambio.

El directorio de parches debe ser un repositorio de Mercurial anidado, como lo crearía hg init
--mq.

Devuelve 0 en caso de éxito.

Opciones:

--jalar utilizar el protocolo de extracción para copiar metadatos

-Tú, --ninguna actualización
no actualizar los nuevos directorios de trabajo

- sin comprimir
usar transferencia sin comprimir (rápido a través de LAN)

-pag,--parches
ubicación del repositorio de parches de origen

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

q comprometerse
cometer cambios en el repositorio de la cola (DEPRECATED):

hg qcommit [OPCIÓN]... [ARCHIVO]...

Este comando está en desuso; utilizar hg hacer --mq preferiblemente.

Opciones:

-UN, --agregar eliminar
marcar archivos nuevos / faltantes como agregados / eliminados antes de confirmar

- cerca de la rama
marcar una rama como cerrada

--enmendar
modificar el padre del directorio de trabajo

-s, --secreto
usa la fase secreta para comprometerte

-mi, --editar
invocar editor en mensajes de confirmación

-I, --interactivo
usar el modo interactivo

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-metro,--mensaje
usar texto como mensaje de confirmación

-yo,--archivo de registro
leer el mensaje de confirmación del archivo

-D,--fecha
registrar la fecha especificada como fecha de compromiso

-tu,--usuario
registrar al usuario especificado como confirmador

-S, --subrepos
recurrir a subrepositorios

[+] la opción marcada se puede especificar varias veces

alias: qci

qborrar
eliminar parches de la cola:

hg qdelete [-k] [PARCHE]...

Los parches no deben aplicarse y se requiere al menos un parche. Parche exacto
se deben dar identificadores. Con -k/--keep, los archivos del parche se conservan en el parche.
directorio.

Para dejar de administrar un parche y moverlo al historial permanente, use el hg qterminar mando.

Opciones:

-k, --guardar
mantener archivo de parche

-r,--Rvdo
dejar de administrar una revisión (DEPRECATED)

[+] la opción marcada se puede especificar varias veces

alias: qremove qrm

q diferencia
diff del parche actual y modificaciones posteriores:

hg qdiff [OPCIÓN]... [ARCHIVO]...

Muestra una diferencia que incluye el parche actual, así como cualquier cambio que se haya realizado.
en el directorio de trabajo desde la última actualización (mostrando así lo que haría el parche actual).
convertido después de un qrefresh).

Uso hg diff si solo desea ver los cambios realizados desde la última qrefresh, o hg exportar
punta q si desea ver los cambios realizados por el parche actual sin incluir los cambios realizados
desde el qrefresh.

Devuelve 0 en caso de éxito.

Opciones:

-a --texto
tratar todos los archivos como texto

-gramo, --git
usar el formato de diferencia extendida de git

--nodatos
omitir fechas de encabezados de diferencias

--noprefijo
omitir los prefijos a / y b / de los nombres de archivo

-pag, - show-función
mostrar en qué función está cada cambio

--contrarrestar
producir una diferencia que deshaga los cambios

-w, - ignorar-todo-espacio
ignorar el espacio en blanco al comparar líneas

-B, --ignorar-cambio-de-espacio
ignorar los cambios en la cantidad de espacio en blanco

-B, --ignorar-líneas-en-blanco
ignorar los cambios cuyas líneas están todas en blanco

-Tú,--unificado
número de líneas de contexto para mostrar

--estat resumen de cambios de estilo diffstat de salida

--raíz
producir diferencias relativas al subdirectorio

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

qterminar
mover los parches aplicados al historial del repositorio:

hg qfinish [-a] [REV]...

Finaliza las revisiones especificadas (correspondientes a los parches aplicados) sacándolos de
mq control en el historial del repositorio regular.

Acepta un rango de revisión o la opción -a/--aplicada. Si se especifica --applied, todos
Las revisiones de mq aplicadas se eliminan del control de mq. De lo contrario, las revisiones dadas deben ser
en la base de la pila de parches aplicados.

Esto puede ser especialmente útil si sus cambios se han aplicado a un repositorio anterior,
o si está a punto de enviar sus cambios a upstream.

Devuelve 0 en caso de éxito.

Opciones:

-a --aplicado
finalizar todos los conjuntos de cambios aplicados

q veces
doble los parches nombrados en el parche actual:

hg qfold [-e] [-k] [-m TEXTO] [-l ARCHIVO] PARCHE...

Los parches aún no deben aplicarse. Cada parche se aplicará sucesivamente al actual
parche en el orden indicado. Si todos los parches se aplican con éxito, el parche actual se
actualizado con el nuevo parche acumulativo, y los parches plegados se eliminarán. Con
-k/--mantener, los archivos de parche plegados no se eliminarán después.

El encabezado de cada parche plegado se concatenará con el encabezado del parche actual,
separados por una línea de * * *.

Devuelve 0 en caso de éxito.

Opciones:

-mi, --editar
invocar editor en mensajes de confirmación

-k, --guardar
mantener los archivos de parche plegados

-metro,--mensaje
usar texto como mensaje de confirmación

-yo,--archivo de registro
leer el mensaje de confirmación del archivo

qgoto
Empuje o extraiga parches hasta que el parche con nombre esté en la parte superior de la pila:

hg qgoto [OPCIÓN]... PARCHE

Devuelve 0 en caso de éxito.

Opciones:

--mantener-cambios
tolerar cambios locales no conflictivos

-F, --fuerza
sobrescribir cualquier cambio local

--sin respaldo
no guarde copias de seguridad de archivos

qguardia
establecer o imprimir protecciones para un parche:

hg qguard [-l] [-n] [PARCHE] [-- [+GUARDIA]... [-GUARDIA]...]

Los guardias controlan si se puede empujar un parche. Siempre se empuja un parche sin guardias. A
parche con una protección positiva ("+foo") se empuja sólo si el hg qseleccionar el comando tiene
lo activó. Un parche con una protección negativa ("-foo") nunca se empuja si el hg qseleccionar
el comando lo ha activado.

Sin argumentos, imprime los guardias actualmente activos. Con argumentos, pon guardias para el
parche nombrado.

Nota Especificar protecciones negativas ahora requiere '--'.

Para establecer guardias en otro parche:

hg qguard otro parche -- +2.6.17 -estable

Devuelve 0 en caso de éxito.

Opciones:

-yo, --lista
enumere todos los parches y protecciones

-norte, --ninguno
bajar todos los guardias

qencabezado
imprima el encabezado del parche superior o especificado:

hg qheader [PARCHE]

Devuelve 0 en caso de éxito.

qimportar
importar un parche o un conjunto de cambios existente:

hg qimport [-e] [-n NOMBRE] [-f] [-g] [-P] [-r REV]... [ARCHIVO]...

El parche se inserta en la serie después del último parche aplicado. Si no tiene parches
aplicado, qimport antepone el parche a la serie.

El parche tendrá el mismo nombre que su archivo fuente a menos que le dé uno nuevo con
-n/--nombre.

Puede registrar un parche existente dentro del directorio de parches con el indicador -e/--existente.

Con -f/--force, se sobrescribirá un parche existente con el mismo nombre.

Un conjunto de cambios existente se puede colocar bajo el control de mq con -r/--rev (por ejemplo, qimport --rev .
-n parche colocará la revisión actual bajo el control de mq). Con -g/--git, parches
importado con --rev utilizará el formato git diff. Consulte el tema de ayuda de diffs para obtener información
sobre por qué esto es importante para preservar la información de renombrar/copiar y los cambios de permisos.
Uso hg qterminar para eliminar los conjuntos de cambios del control mq.

Para importar un parche desde la entrada estándar, pase - como archivo de parche. Al importar desde
entrada estándar, se debe especificar un nombre de parche usando el indicador --name.

Para importar un parche existente mientras se le cambia el nombre:

hg qimport -e parche-existente -n nombre-nuevo

Devuelve 0 si la importación se realizó correctamente.

Opciones:

-mi, --existente
importar archivo en el directorio de parches

-norte,--nombre
nombre del archivo de parche

-F, --fuerza
sobrescribir archivos existentes

-r,--Rvdo
colocar las revisiones existentes bajo el control de mq

-gramo, --git
usar el formato de diferencia extendida de git

-PAG, --empujar
qpush después de importar

[+] la opción marcada se puede especificar varias veces

qinit
iniciar un nuevo depósito de cola (DEPRECATED):

hg qinit [-c]

El depósito de cola no está versionado de forma predeterminada. Si se especifica -c/--create-repo, qinit
creará un repositorio anidado separado para parches (qinit -c también se puede ejecutar más adelante para
convertir un repositorio de parches no versionado en uno versionado). Puedes usar qcommit para
confirmar cambios en este depósito de cola.

Este comando está en desuso. Sin -c, está implícito en otros comandos relevantes. Con -c,
utilizan el hg init --mq preferiblemente.

Opciones:

-C, --crear-repositorio
crear un repositorio de colas

qnuevo
crear un nuevo parche:

hg qnuevo [-e] [-m TEXTO] [-l ARCHIVO] PARCHE [ARCHIVO]...

qnew crea un nuevo parche sobre el parche aplicado actualmente (si lo hay). El parche será
inicializado con cualquier cambio pendiente en el directorio de trabajo. También puede usar
-I/--include, -X/--exclude y/o una lista de archivos después del nombre del parche para agregar solamente
cambios en los archivos coincidentes con el nuevo parche, dejando el resto como modificaciones no confirmadas.

-u/--user y -d/--date se pueden usar para configurar el usuario (dado) y la fecha, respectivamente.
-U/--currentuser y -D/-currentdate configuran el usuario en el usuario actual y la fecha en la fecha actual.

-e/--edit, -m/--message o -l/--logfile establecen el encabezado del parche y la confirmación
mensaje. Si no se especifica ninguno, el encabezado está vacío y el mensaje de confirmación es '[mq]:
PARCHE'.

Use la opción -g/--git para mantener el parche en el formato git extended diff. Lee las diferencias
tema de ayuda para obtener más información sobre por qué esto es importante para conservar los cambios de permisos
y copiar/renombrar información.

Devuelve 0 en la creación exitosa de un nuevo parche.

Opciones:

-mi, --editar
invocar editor en mensajes de confirmación

-F, --fuerza
importar cambios no confirmados (DEPRECATED)

-gramo, --git
usar el formato de diferencia extendida de git

-Tú, --usuario actual
añadir "De: " Parchear

-tu,--usuario
añadir "De: " Parchear

-RE, --fecha actual
añadir "Fecha: " Parchear

-D,--fecha
añadir "Fecha: " Parchear

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-metro,--mensaje
usar texto como mensaje de confirmación

-yo,--archivo de registro
leer el mensaje de confirmación del archivo

[+] la opción marcada se puede especificar varias veces

Qnext
imprime el nombre del siguiente parche pushable:

hg qsiguiente [-s]

Devuelve 0 en caso de éxito.

Opciones:

-s, --resumen
imprimir la primera línea del encabezado del parche

qpop
sacar el parche actual de la pila:

hg qpop [-a] [-f] [PARCHE | ÍNDICE]

Sin argumentos, aparece en la parte superior de la pila de parches. Si se le da un nombre de parche, mantiene
quitando parches hasta que el parche nombrado esté en la parte superior de la pila.

De forma predeterminada, cancela si el directorio de trabajo contiene cambios no confirmados. Con
--keep-changes, abortar solo si los archivos no comprometidos se superponen con los archivos parcheados. Con
-f/--forzar, hacer una copia de seguridad y descartar los cambios realizados en dichos archivos.

Devuelve 0 en caso de éxito.

Opciones:

-a --todas
revienta todos los parches

-norte,--nombre
nombre de la cola para abrir (OBSOLETO)

--mantener-cambios
tolerar cambios locales no conflictivos

-F, --fuerza
olvide cualquier cambio local en los archivos parcheados

--sin respaldo
no guarde copias de seguridad de archivos

qprev
escriba el nombre del parche aplicado anterior:

hg qprev [-s]

Devuelve 0 en caso de éxito.

Opciones:

-s, --resumen
imprimir la primera línea del encabezado del parche

empujar
empuje el siguiente parche en la pila:

hg qpush [-f] [-l] [-a] [--mover] [PARCHE | ÍNDICE]

De forma predeterminada, cancela si el directorio de trabajo contiene cambios no confirmados. Con
--keep-changes, abortar solo si los archivos no comprometidos se superponen con los archivos parcheados. Con
-f/--force, copia de seguridad y parche sobre cambios no confirmados.

Devuelve 0 en caso de éxito.

Opciones:

--mantener-cambios
tolerar cambios locales no conflictivos

-F, --fuerza
aplicar sobre los cambios locales

-mi, --exacto
aplicar el parche de destino a su padre grabado

-yo, --lista
enumerar el nombre del parche en el texto de confirmación

-a --todas
aplicar todos los parches

-metro, --unir
combinar desde otra cola (DEPRECATED)

-norte,--nombre
fusionar nombre de cola (OBSEO)

--moverse reordenar la serie de parches y aplicar solo el parche

--sin respaldo
no guarde copias de seguridad de archivos

hacer cola
administrar varias colas de parches:

hg qqueue [OPCIÓN] [QUEUE]

Admite el cambio entre diferentes colas de parches, así como la creación de nuevas colas de parches
y eliminando los existentes.

Omitir un nombre de cola o especificar -l/--list le mostrará las colas registradas - por
por defecto se registra la cola de parches "normales". La cola actualmente activa será
marcado con "(activo)". Especificar --active imprimirá solo el nombre de la cola activa.

Para crear una nueva cola, use -c/--create. La cola se activa automáticamente, excepto en
el caso donde hay parches aplicados de la cola actualmente activa en el
repositorio. Entonces la cola solo se creará y el cambio fallará.

Para eliminar una cola existente, use --delete. No puede eliminar la cola actualmente activa.

Devuelve 0 en caso de éxito.

Opciones:

-yo, --lista
enumerar todas las colas disponibles

--activo
imprimir el nombre de la cola activa

-C, --crear
crear nueva cola

--rebautizar
cambiar el nombre de la cola activa

--Eliminar
eliminar la referencia a la cola

--purga
eliminar la cola y eliminar el directorio de parches

qrefrescar
actualizar el parche actual:

hg qrefresh [-I] [-X] [-e] [-m TEXTO] [-l ARCHIVO] [-s] [ARCHIVO]...

Si se proporciona algún patrón de archivo, el parche actualizado contendrá solo las modificaciones
que coincidan con esos patrones; las restantes modificaciones permanecerán en funcionamiento
directorio.

Si se especifica -s/--short, los archivos incluidos actualmente en el parche se actualizarán
como archivos coincidentes y permanecer en el parche.

Si se especifica -e/--edit, Mercurial iniciará su editor configurado para que ingrese un
mensaje. En caso de que qrefresh falle, encontrará una copia de seguridad de su mensaje en
.hg / último-mensaje.txt.

hg add/remove/copy/rename funciona como de costumbre, aunque es posible que desee usar parches de estilo git
(-g/--git o [diff] git=1) para rastrear copias y renombrar. Consulte el tema de ayuda de diferencias para obtener más información.
información sobre el formato git diff.

Devuelve 0 en caso de éxito.

Opciones:

-mi, --editar
invocar editor en mensajes de confirmación

-gramo, --git
usar el formato de diferencia extendida de git

-s, --pequeño
actualizar solo los archivos que ya están en el parche y los archivos especificados

-Tú, --usuario actual
agregar/actualizar el campo de autor en el parche con el usuario actual

-tu,--usuario
agregar/actualizar el campo de autor en el parche con el usuario dado

-RE, --fecha actual
agregar/actualizar el campo de fecha en el parche con la fecha actual

-D,--fecha
agregar/actualizar el campo de fecha en el parche con la fecha dada

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-metro,--mensaje
usar texto como mensaje de confirmación

-yo,--archivo de registro
leer el mensaje de confirmación del archivo

[+] la opción marcada se puede especificar varias veces

qrenombrar
cambiar el nombre de un parche:

hg qrename PATCH1 [PATCH2]

Con un argumento, cambia el nombre del parche actual a PATCH1. Con dos argumentos, cambia el nombre
PARCHE1 a PARCHE2.

Devuelve 0 en caso de éxito.

alias: qmv

qrestaurar
restaurar el estado de la cola guardado por una revisión (DEPRECATED):

hg qrestaurar [-d] [-u] REV

Este comando está en desuso, use hg rebase preferiblemente.

Opciones:

-D, --Eliminar
eliminar guardar entrada

-tu, --actualizar
actualizar el directorio de trabajo de la cola

qguardar
guardar el estado actual de la cola (DEPRECATED):

hg qsave [-m TEXTO] [-l ARCHIVO] [-c] [-n NOMBRE] [-e] [-f]

Este comando está en desuso, use hg rebase preferiblemente.

Opciones:

-C, --Copiar
copiar directorio de parches

-norte,--nombre
copiar el nombre del directorio

-mi, --vacío
borrar archivo de estado de cola

-F, --fuerza
forzar copia

-metro,--mensaje
usar texto como mensaje de confirmación

-yo,--archivo de registro
leer el mensaje de confirmación del archivo

qseleccionar
establecer o imprimir parches protegidos para impulsar:

hg qseleccione [OPCIÓN]... [GUARDIA]...

Ingrese al hg qguardia comando para configurar o imprimir guardias en el parche, luego use qselect para decirle a mq
qué guardias usar. Se empujará un parche si no tiene guardias o guardias positivas
coincida con la guardia seleccionada actualmente, pero no se empujará si alguna guardia negativa coincide
la guardia actual. Por ejemplo:

qguard foo.patch -- -estable (protección negativa)
qguard bar.patch +estable (protección positiva)
qseleccionar estable

Esto activa la guardia "estable". mq omitirá foo.patch (porque tiene un negativo
match) pero presione bar.patch (porque tiene una coincidencia positiva).

Sin argumentos, imprime los guardias actualmente activos. Con un argumento, establece el activo
Guardia.

Utilice -n/--none para desactivar las protecciones (no se necesitan otros argumentos). Cuando no hay guardias
activos, los parches con protecciones positivas se omiten y los parches con protecciones negativas se
empujado.

qselect puede cambiar las protecciones en los parches aplicados. No hace estallar parches guardados por
por defecto. Use --pop para regresar al último parche aplicado que no está protegido. Utilizar
--reapply (lo que implica --pop) para retroceder al parche actual después, pero omita
parches protegidos.

Use -s/--series para imprimir una lista de todos los guardias en el archivo de la serie (sin otros argumentos).
necesario). Utilice -v para obtener más información.

Devuelve 0 en caso de éxito.

Opciones:

-norte, --ninguno
desactivar todos los guardias

-s, --serie
enumerar todos los guardias en el archivo de serie

--música pop pop a antes del primer parche aplicado protegido

--aplicar de nuevo
pop, luego vuelva a aplicar parches

serie q
imprimir todo el archivo de la serie:

serie qhg [-ms]

Devuelve 0 en caso de éxito.

Opciones:

-metro, --desaparecido
imprimir parches no en serie

-s, --resumen
imprimir la primera línea del encabezado del parche

arriba
imprime el nombre del parche actual:

hg qtop [-s]

Devuelve 0 en caso de éxito.

Opciones:

-s, --resumen
imprimir la primera línea del encabezado del parche

aplicado
imprimir los parches aún no aplicados:

hg aplicado [-1] [-s] [PARCHE]

Devuelve 0 en caso de éxito.

Opciones:

-1, --primero
mostrar solo el primer parche

-s, --resumen
imprimir la primera línea del encabezado del parche

notificar
ganchos para enviar notificaciones push por correo electrónico

Esta extensión implementa ganchos para enviar notificaciones por correo electrónico cuando se envían conjuntos de cambios desde
o recibido por el repositorio local.

Primero, habilite la extensión como se explica en hg ayuda extensionesy registra el gancho que
quiero correr amplificación de la voz entrante y grupo de cambio los ganchos se ejecutan cuando se reciben conjuntos de cambios, mientras que
saliente los ganchos son para conjuntos de cambios enviados a otro repositorio:

[manos]
# un correo electrónico para cada conjunto de cambios entrante
entrante.notificar = python:hgext.notificar.hook
# un correo electrónico para todos los conjuntos de cambios entrantes
cambiargrupo.notificar = python:hgext.notificar.hook

# un correo electrónico para todos los conjuntos de cambios salientes
saliente.notificar = python:hgext.notify.hook

Esto registra los ganchos. Para habilitar la notificación, los suscriptores deben estar asignados a
repositorios los [sususuarios] La sección asigna varios repositorios a un destinatario determinado. los
[reposubos] La sección asigna múltiples destinatarios a un solo repositorio:

[sususuarios]
# clave es el correo electrónico del suscriptor, el valor es una lista separada por comas de patrones de repositorio
usuario@host = patrón

[reposubos]
# clave es patrón de repositorio, valor es una lista separada por comas de correos electrónicos de suscriptores
patrón = usuario@host

A patrón es un glob haciendo coincidir la ruta absoluta a un repositorio, combinado opcionalmente con un
expresión revset. Una expresión revset, si está presente, se separa del globo por un hash.
Ejemplo:

[reposubos]
*/widgets#branch(liberación) = [email protected]

Esto envía a [email protected] cada vez que un conjunto de cambios en el , rama desencadena una
notificación en cualquier repositorio que termine en widgets.

Para ponerlos bajo la gestión directa de los usuarios, [sususuarios] y [reposubos] (secciones)
puede colocarse en un lugar separado hgrc archivo e incorporado por referencia:

[notificar]
config = /ruta/al/archivo de suscripciones

Las notificaciones no se enviarán hasta que el notificar.prueba el valor está configurado para Falso; vea abajo.

El contenido de las notificaciones se puede modificar con las siguientes entradas de configuración:

notificar.prueba
If ¿Editas con tu equipo de forma remota?, imprima mensajes en la salida estándar en lugar de enviarlos. Valor predeterminado: verdadero.

notificar.fuentes
Lista separada por espacios de fuentes de cambio. Las notificaciones se activan sólo cuando un
la fuente de changeset está en esta lista. Las fuentes pueden ser:

ayudar

conjuntos de cambios recibidos a través de http o ssh

recogida

conjuntos de cambios recibidos a través de hg recogida

desagregar

conjuntos de cambios recibidos a través de hg desagregar

empuje

conjuntos de cambios enviados o recibidos a través de hg empuje

liar

conjuntos de cambios enviados a través de hg desagregar

Predeterminado: servir.

notificar.tira
Número de barras inclinadas iniciales para eliminar de las rutas de URL. Por defecto, las notificaciones
repositorios de referencia con su ruta absoluta. notificar.tira te permite convertirlos
en caminos relativos. Por ejemplo, notificar.strip=3 cambiará /larga/ruta/repositorio
dentro repositorio. Predeterminado: 0.

notificar.dominio
Dominio de correo electrónico predeterminado para el remitente o los destinatarios sin un dominio explícito.

notificar.estilo
Archivo de estilo para usar al formatear correos electrónicos.

notificar.plantilla
Plantilla para usar al formatear correos electrónicos.

notificar.entrante
Plantilla para usar cuando se ejecuta como un gancho entrante, anulando notificar.plantilla.

notificar.saliente
Plantilla para usar cuando se ejecuta como un gancho saliente, anulando notificar.plantilla.

notificar.cambiogrupo
Plantilla para usar cuando se ejecuta como un gancho de grupo de cambio, anulando notificar.plantilla.

notificar.maxdiff
Número máximo de líneas de diferencias para incluir en el correo electrónico de notificación. Establecer en 0 para deshabilitar
la diferencia, o -1 para incluirlo todo. Predeterminado: 300.

notificar.maxsubject
Número máximo de caracteres en la línea de asunto del correo electrónico. Predeterminado: 67.

notificar.diffstat
Establézcalo en True para incluir un diffstat antes del contenido de diff. Valor predeterminado: verdadero.

notificar.combinar
Si es Verdadero, envíe notificaciones para fusionar conjuntos de cambios. Valor predeterminado: verdadero.

notificar.mbox
Si está configurado, agregue correos a este archivo mbox en lugar de enviarlos. Valor predeterminado: ninguno.

notificar.delautor
Si se establece, use el confirmador del primer conjunto de cambios en un grupo de cambios para el "De"
campo del correo de notificación. Si no se establece, saca al usuario del repositorio de envío.
Predeterminado: falso.

Si se establece, las siguientes entradas también se utilizarán para personalizar las notificaciones:

email de
Correo electrónico Desde dirección a utilizar si no se encuentra ninguna en el contenido del correo electrónico generado.

web.baseurl
URL del repositorio raíz para combinar con las rutas del repositorio al hacer referencias. Ver
también notificar.tira.

pagar
navegar por la salida del comando con un buscapersonas externo

Para configurar el buscapersonas que debe usarse, configure la variable de la aplicación:

[buscapersonas]
localizador = menos -FRX

Si no se configura un localizador, las extensiones del localizador utilizan la variable de entorno $PAGER. si ninguno
pager.pager, ni $PAGER está configurado, no se utiliza ningún buscapersonas.

Puede deshabilitar el buscapersonas para ciertos comandos agregándolos a la lista pager.ignore:

[buscapersonas]
ignore = versión, ayuda, actualización

También puede habilitar el buscapersonas solo para ciertos comandos usando pager.attend. abajo esta el
lista predeterminada de comandos que se paginarán:

[buscapersonas]
atender = anotar, cat, diff, exportar, glog, log, qdiff

Establecer pager.attend en un valor vacío hará que se paginan todos los comandos.

Si está presente pager.attend, se ignorará pager.ignore.

Por último, puede habilitar y deshabilitar la paginación para comandos individuales con el
asistir- opción. Esta configuración tiene prioridad sobre atender e ignorar existentes
opciones y valores predeterminados:

[buscapersonas]
atender-gato = falso

Para ignorar comandos globales como hg versión or hg ayuda, tienes que especificarlos en tu
archivo de configuración de usuario.

Para controlar si el buscapersonas se usa para un comando individual, puede usar
--localizador= :

- use según sea necesario: `auto`.
- requiere el buscapersonas: `yes` o `on`.
- suprimir el buscapersonas: `no` o `off` (cualquier valor no reconocido
también funcionará).

bomba de parche
comando para enviar conjuntos de cambios como (una serie de) correos electrónicos de parche

La serie comienza con una introducción "[PATCH 0 of N]", que describe la serie
como un todo.

Cada correo electrónico de parche tiene una línea de Asunto de "[PATCH M of N] ...", usando la primera línea del
descripción del conjunto de cambios como el texto del asunto. El mensaje contiene dos o tres partes del cuerpo:

· La descripción del conjunto de cambios.

· [Opcional] El resultado de ejecutar diffstat en el parche.

· El propio parche, generado por hg exportar.

Cada mensaje se refiere al primero de la serie utilizando In-Reply-To y References
encabezados, por lo que aparecerán como una secuencia en el correo encadenado y los lectores de noticias, y en el correo
archivos.

Para configurar otros valores predeterminados, agregue una sección como esta a su archivo de configuración:

[correo electrónico]
de = Mi nombre
a = destinatario1, destinatario2, ...
cc = cc1, cc2, ...
bcc = bcc1, bcc2, ...
responder a = dirección1, dirección2, ...

Uso [bomba de parche] como nombre de la sección de configuración si necesita anular global [correo electrónico]
configuración de direcciones.

Entonces puedes usar el hg email comando para enviar por correo una serie de conjuntos de cambios como una bomba de parche.

También puede configurar la opción de método en la sección de correo electrónico para que sea un correo de envío
correo compatible o complete la sección [smtp] para que la extensión patchbomb pueda
envía automáticamente patchbombs directamente desde la línea de comandos. Ver el [correo electrónico] y [smtp]
secciones en hgrc(5) para obtener más detalles.

De forma predeterminada, hg email pedirá un A or CC encabezado si no proporciona uno a través de
configuración o la línea de comando. Puede anular esto para que nunca se le solicite configurando
un valor vacío:

[correo electrónico]
CC =

Puede controlar la inclusión predeterminada de un mensaje de introducción con el patchbomb.introducción
opción de configuración La configuración siempre se sobrescribe con indicadores de línea de comando como
--introducción y --desc:

[bomba de parche]
intro=auto # incluir mensaje de introducción si hay más de 1 parche (predeterminado)
intro=nunca # nunca incluir un mensaje de presentación
intro=always # siempre incluye un mensaje de introducción

Puede configurar patchbomb para que siempre pida confirmación configurando parchebomba.confirmar a la verdad

Comandos
email
enviar conjuntos de cambios por correo electrónico:

hg email [OPCIÓN]... [DEST]...

Por defecto, las diferencias se envían en el formato generado por hg exportar, uno por mensaje. Él
La serie comienza con una introducción "[PATCH 0 of N]", que describe la serie como un todo.

Cada correo electrónico de parche tiene una línea de Asunto de "[PATCH M of N] ...", usando la primera línea del
descripción del conjunto de cambios como el texto del asunto. El mensaje contiene dos o tres partes.
Primero, la descripción del conjunto de cambios.

Con la opción -d/--diffstat, si el programa diffstat está instalado, el resultado de ejecutar
se inserta diffstat en el parche.

Finalmente, el propio parche, generado por hg exportar.

Con las opciones -d/--diffstat o --confirm, se le presentará un resumen final de
todos los mensajes y pidió confirmación antes de enviar los mensajes.

De manera predeterminada, el parche se incluye como texto en el cuerpo del correo electrónico para facilitar la revisión. Utilizando el
La opción -a/--attach creará un archivo adjunto para el parche. Con -i/--inline an
se creará un archivo adjunto en línea. Puede incluir un parche tanto como texto en el cuerpo del correo electrónico
y como adjunto regular o en línea combinando -a/--attach o -i/--inline con
la opción --body.

Con -o/--saliente, se generarán correos electrónicos para parches que no se encuentran en el destino
repositorio (o solo aquellos que son ancestros de las revisiones especificadas, si las hay).
previsto)

Con -b/--bundle, los conjuntos de cambios se seleccionan como --outgoing, pero un solo correo electrónico que contiene
Se enviará un paquete binario de Mercurial como archivo adjunto. Utilizar el patchbomb.tipo de paquete
opción de configuración para controlar el tipo de paquete como con hg liar --escribe.

Con -m/--mbox, en lugar de obtener una vista previa de cada mensaje patchbomb en un buscapersonas o enviar el
mensajes directamente, creará un archivo de buzón UNIX con los correos electrónicos del parche. este buzón
El archivo se puede previsualizar con cualquier agente de usuario de correo que admita archivos mbox de UNIX.

Con -n/--test, se ejecutarán todos los pasos, pero no se enviará el correo. Se le solicitará
una dirección de correo electrónico del destinatario, un asunto y un mensaje de introducción que describe los parches
de tu parche bomba. Luego, cuando todo está hecho, se muestran mensajes patchbomb. Si el LOCALIZADOR
se establece la variable de entorno, su buscapersonas se activará una vez por cada mensaje patchbomb,
para que verifiques que todo está bien.

En caso de que falle el envío de correo electrónico, encontrará una copia de seguridad del mensaje introductorio de su serie en
.hg/último-email.txt.

El comportamiento predeterminado de este comando se puede personalizar a través de la configuración. (Ver hg ayuda
bomba de parche para detalles)

Ejemplos:

hg email -r 3000 # enviar parche 3000 solamente
hg email -r 3000 -r 3001 # enviar parches 3000 y 3001
hg email -r 3000:3005 # enviar parches 3000 a 3005
hg email 3000 # enviar parche 3000 (obsoleto)

hg email -o # enviar todos los parches no predeterminados
hg email -o DEST # envía todos los parches que no están en DEST
hg email -o -r 3000 # enviar todos los ancestros de 3000 no por defecto
hg email -o -r 3000 DEST # envía todos los ancestros de 3000 que no están en DEST

hg email -b # enviar paquete de todos los parches que no están en defecto
hg email -b DEST # enviar paquete de todos los parches que no están en DEST
hg email -b -r 3000 # paquete de todos los ancestros de 3000 no por defecto
hg email -b -r 3000 DEST # paquete de todos los ancestros de 3000 que no están en DEST

hg email -o -m mbox && # generar un archivo mbox...
mutt -R -f mbox # ... y verlo con mutt
hg email -o -m mbox && # generar un archivo mbox ...
formail -s sendmail \ # ... y usa formail para enviar desde el mbox
-bm -t < mbox # ... usando sendmail

Antes de usar este comando, deberá habilitar el correo electrónico en su hgrc. Ver el [correo electrónico]
sección en hgrc(5) para obtener más detalles.

Opciones:

-gramo, --git
usar el formato de diferencia extendida de git

--sencillo
omitir el encabezado del parche hg

-Oh, --extrovertido
enviar cambios no encontrados en el repositorio de destino

-B, --manojo
enviar cambios que no están en el destino como un paquete binario

--nombre del paquete
nombre del archivo adjunto del paquete (predeterminado: paquete)

-r,--Rvdo
una revisión para enviar

--fuerza
se ejecuta incluso cuando el repositorio remoto no está relacionado (con -b/--bundle)

--base
un conjunto de cambios base para especificar en lugar de un destino (con -b/--bundle)

--introducción
enviar un correo electrónico de presentación para un solo parche

--cuerpo enviar parches como texto de mensaje en línea (predeterminado)

-a --adjuntar
enviar parches como archivos adjuntos

-I, --en línea
enviar parches como archivos adjuntos en línea

--bcc
direcciones de correo electrónico de los destinatarios de las copias ocultas

-C,--cc
direcciones de correo electrónico de los destinatarios de la copia

--confirmar
pedir confirmación antes de enviar

-D, --diffstat
agregar salida diffstat a los mensajes

--fecha
usar la fecha dada como la fecha de envío

--desc
use el archivo dado como la descripción de la serie

-F,--desde
dirección de correo electrónico del remitente

-norte, --prueba
imprimir mensajes que serían enviados

-metro,--mbox
escribir mensajes en el archivo mbox en lugar de enviarlos

--responder a
Las respuestas a las direcciones de correo electrónico deben enviarse a

-s,--tema
asunto del primer mensaje (introducción o parche único)

--en respuesta a
identificador de mensaje para responder

--bandera
banderas para agregar en los prefijos de asunto

-t,--a
direcciones de correo electrónico de los destinatarios

-mi,--ssh
especificar el comando ssh para usar

--remotocmd
especificar el comando hg para que se ejecute en el lado remoto

--inseguro
no verifique el certificado del servidor (ignorando la configuración de web.cacerts)

[+] la opción marcada se puede especificar varias veces

purga
comando para eliminar archivos sin seguimiento del directorio de trabajo

Comandos
purga
elimina archivos no rastreados por Mercurial:

hg purge [OPCIÓN]... [DIR]...

Eliminar archivos desconocidos para Mercurial. Esto es útil para probar cambios locales y no confirmados.
en un árbol de fuentes limpio.

Esto significa que la purga eliminará lo siguiente de forma predeterminada:

· Archivos desconocidos: archivos marcados con "?" por hg estado

· Directorios vacíos: de hecho, Mercurial ignora los directorios a menos que contengan archivos bajo
gestión de control de fuente

Pero dejará intacto:

· Archivos rastreados modificados y no modificados

· Archivos ignorados (a menos que se especifique --all)

· Nuevos archivos agregados al repositorio (con hg add)

Las opciones --files y --dirs se pueden usar para purgar directamente y eliminar solo archivos, solo
directorios, o ambos. Si no se da ninguna opción, ambas serán eliminadas.

Si se proporcionan directorios en la línea de comando, solo se muestran los archivos de estos directorios.
considerado.

Tenga cuidado con la purga, ya que podría eliminar irreversiblemente algunos archivos que olvidó agregar.
el repositorio Si solo desea imprimir la lista de archivos que este programa
eliminar, use la opción --print.

Opciones:

-a --abortar por error
abortar si ocurre un error

--todas purgar archivos ignorados también

--directorios purgar directorios vacios

--archivos
purgar archivos

-pag, --impresión
imprimir nombres de archivo en lugar de eliminarlos

-0, --imprimir0
nombres de archivo finales con NUL, para usar con xargs (implica -p/--print)

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

alias: limpio

rebase
comando para mover conjuntos de revisiones a un antepasado diferente

Esta extensión le permite cambiar la base de los conjuntos de cambios en un repositorio de Mercurial existente.

Para más información: https://mercurial-scm.org/wiki/RebaseExtension

Comandos
rebase
mueva el conjunto de cambios (y los descendientes) a una rama diferente:

hg rebase [-s REV | -b REV] [-d REV] [OPCIÓN]

Rebase usa fusiones repetidas para injertar conjuntos de cambios de una parte de la historia (la fuente)
a otro (el destino). Esto puede ser útil para linealizar local cambios relativos
a un árbol de desarrollo maestro.

Las confirmaciones publicadas no se pueden reorganizar (ver hg ayuda fases). Para copiar confirmaciones, consulte hg ayuda
injerto.

Si no especifica un conjunto de cambios de destino (-d/--destino), rebase usa la rama actual
propina como destino. (El conjunto de cambios de destino no se modifica mediante la reorganización, sino nuevos
los conjuntos de cambios se agregan como sus descendientes).

Estas son las formas de seleccionar conjuntos de cambios:

1. Selecciónelos explícitamente usando --Rvdo.

2. Utilizar --fuente para seleccionar un conjunto de cambios raíz e incluir todos sus descendientes.

3. Utilizar --base para seleccionar un conjunto de cambios; rebase encontrará ancestros y sus descendientes
que no son también antepasados ​​del destino.

4. Si no especifica ninguno de --Rvdo, fuenteo --base, rebase usará --base . as
anterior.

Rebase destruirá los conjuntos de cambios originales a menos que use --guardar. También moverá su
marcadores (incluso si lo hace).

Algunos conjuntos de cambios pueden eliminarse si no aportan cambios (por ejemplo, fusiones desde el
sucursal de destino).

Diferente a la unir, rebase no hará nada si está en la punta de la rama de una rama nombrada con
dos cabezas. Deberá especificar explícitamente el origen y/o el destino.

Si se interrumpe una reorganización para resolver manualmente un conflicto, se puede continuar con
--continue/-c o abortado con --abort/-a.

Ejemplos:

· mover los "cambios locales" (commit actual de nuevo al punto de bifurcación) a la punta de la bifurcación actual
después de un tirón:

rebase de hg

· mover un único conjunto de cambios a la rama estable:

hg rebase -r 5f493448 -d estable

· empalmar una confirmación y todos sus descendientes en otra parte de la historia:

hg rebase --fuente c0c3 --dest 4cf9

· reorganizar todo en una rama marcada con un marcador en la rama predeterminada:

hg rebase --base myfeature --dest predeterminado

· colapsar una secuencia de cambios en una sola confirmación:

hg rebase --collapse -r 1520:1525 -d .

· mover una rama nombrada conservando su nombre:

hg rebase -r "branch(featureX)" -d 1.3 --keepbranches

Devuelve 0 en caso de éxito, 1 si no hay nada que reorganizar o si hay conflictos sin resolver.

Opciones:

-s,--fuente
rebase el conjunto de cambios especificado y los descendientes

-B,--base
reorganizar todo desde el punto de bifurcación del conjunto de cambios especificado

-r,--Rvdo
rebase estas revisiones

-D,--destino
rebase en el conjunto de cambios especificado

--colapso
colapsar los conjuntos de cambios reorganizados

-metro,--mensaje
usar texto como mensaje de confirmación de colapso

-mi, --editar
invocar editor en mensajes de confirmación

-yo,--archivo de registro
leer el mensaje de confirmación de colapso del archivo

-k, --guardar
mantener los conjuntos de cambios originales

--mantener ramas
mantener los nombres de las sucursales originales

-RE, --despegar
(OBSOLETO)

-I, --interactivo
(OBSOLETO)

-t,--herramienta
especificar herramienta de combinación

-C, --Seguir
continuar un rebase interrumpido

-a --abortar
abortar un rebase interrumpido

--estilo
mostrar usando el archivo de mapa de plantilla (DEPRECATED)

-T,--plantilla
mostrar con plantilla

[+] la opción marcada se puede especificar varias veces

grabar
comandos para seleccionar interactivamente cambios para commit / qrefresh

Comandos
qgrabar
grabar interactivamente un nuevo parche:

hg qrecord [OPCIÓN]... PARCHE [ARCHIVO]...

See hg ayuda qnuevo & hg ayuda grabar para más información y uso.

grabar
seleccione de forma interactiva los cambios para confirmar:

hg record [OPCIÓN]... [ARCHIVO]...

Si se omite una lista de archivos, todos los cambios informados por hg estado serán candidatos para
grabación.

See hg ayuda fechas para obtener una lista de formatos válidos para la fecha -d / -.

Se le preguntará si desea registrar los cambios en cada archivo modificado y para los archivos
con múltiples cambios, para cada cambio a utilizar. Para cada consulta, las siguientes respuestas son
posible:

y - registrar este cambio
n - omitir este cambio
e - editar este cambio manualmente

s - omitir los cambios restantes en este archivo
f - registrar los cambios restantes en este archivo

d - hecho, omitir los cambios y archivos restantes
a - registrar todos los cambios en todos los archivos restantes
q - salir, grabar sin cambios

? - mostrar ayuda

Este comando no está disponible cuando se confirma una fusión.

Opciones:

-UN, --agregar eliminar
marcar archivos nuevos / faltantes como agregados / eliminados antes de confirmar

- cerca de la rama
marcar una rama como cerrada

--enmendar
modificar el padre del directorio de trabajo

-s, --secreto
usa la fase secreta para comprometerte

-mi, --editar
invocar editor en mensajes de confirmación

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

-metro,--mensaje
usar texto como mensaje de confirmación

-yo,--archivo de registro
leer el mensaje de confirmación del archivo

-D,--fecha
registrar la fecha especificada como fecha de compromiso

-tu,--usuario
registrar al usuario especificado como confirmador

-S, --subrepos
recurrir a subrepositorios

-w, - ignorar-todo-espacio
ignorar el espacio en blanco al comparar líneas

-B, --ignorar-cambio-de-espacio
ignorar los cambios en la cantidad de espacio en blanco

-B, --ignorar-líneas-en-blanco
ignorar los cambios cuyas líneas están todas en blanco

[+] la opción marcada se puede especificar varias veces

volver a vincular
recrea los enlaces duros entre los clones del repositorio

Comandos
volver a vincular
recrear enlaces duros entre dos repositorios:

hg volver a vincular [ORIGEN]

Cuando los repositorios se clonan localmente, sus archivos de datos se vincularán para que
solo usa el espacio de un solo repositorio.

Desafortunadamente, las extracciones posteriores a cualquiera de los repositorios romperán los enlaces duros de cualquier archivo.
tocado por los nuevos conjuntos de cambios, incluso si ambos repositorios terminan generando los mismos cambios.

De manera similar, pasar --rev a "hg clone" no podrá usar ningún enlace duro, recurriendo a un
copia completa del repositorio fuente.

Este comando le permite recrear esos enlaces duros y recuperar ese espacio desperdiciado.

Este repositorio se volverá a vincular para compartir espacio con ORIGIN, que debe estar en el mismo
disco local. Si se omite ORIGIN, busca "default-relink", luego "default", en [paths].

No intente ninguna operación de lectura en este repositorio mientras se ejecuta el comando. (Ambas cosas
los repositorios se bloquearán contra escrituras).

esquemas
extender esquemas con accesos directos a enjambres de repositorios

Esta extensión le permite especificar accesos directos para URL principales con muchos repositorios
para actuar como un esquema, por ejemplo:

[esquemas]
pi = http://code.python.org/hg/

Después de eso puedes usarlo como:

hg clone py://tronco/

Además, hay soporte para algunos esquemas más complejos, por ejemplo, los que utiliza Google.
Código:

[esquemas]
código g = http://{1}.googlecode.com/hg/

La sintaxis se toma de las plantillas de Mercurial y tiene un número ilimitado de variables,
empezando con 1 {} y continuando con 2 {}, 3 {} y así. Estas variables recibirán
partes de URL suministradas, divididas por /. Cualquier cosa no especificada como {parte} solo se agregará
a una URL.

Para mayor comodidad, la extensión agrega estos esquemas de forma predeterminada:

[esquemas]
pi = http://hg.python.org/
bb = https://bitbucket.org/
bb+ssh = ssh://[email protected]/
código g = https://{1}.googlecode.com/hg/
horno = https://{1}.kilnhg.com/Repo/

Puede anular un esquema predefinido definiendo un nuevo esquema con el mismo nombre.

comparte
compartir un historial común entre varios directorios de trabajo

Automático Agrupados Almacenamiento para Los clones
Cuando esta extensión está activa, hg clonar se puede configurar para compartir/agrupar automáticamente
almacenamiento en varios clones. Este modo convierte efectivamente hg clonar a hg clonar + hg
comparte. El beneficio de usar este modo es la gestión automática de rutas de almacenamiento y
agrupación inteligente de repositorios relacionados.

Las siguientes compartir. las opciones de configuración influyen en esta función:

compartir.piscina

Ruta del sistema de archivos donde se almacenarán los datos del repositorio compartido. Cuando se define, hg clonar
utilizará automáticamente el almacenamiento de repositorio compartido en lugar de crear una tienda dentro
cada clon.

compartir.poolnaming

Cómo nombres de directorio en compartir.piscina se construyen.

"identidad" significa que el nombre se deriva del primer conjunto de cambios en el repositorio. En
este modo, diferentes controles remotos comparten almacenamiento si su conjunto de cambios raíz/inicial es
idéntico. En este modo, el repositorio compartido local es un agregado de todos
repositorios remotos encontrados.

"remoto" significa que el nombre se deriva de la ruta o URL del repositorio de origen. En
este modo, el almacenamiento solo se comparte si la ruta o la URL solicitada en el hg clonar
El comando coincide exactamente con un repositorio que se clonó anteriormente.

El modo de denominación predeterminado es "identidad".

Comandos
comparte
crear un nuevo repositorio compartido:

hg share [-U] [-B] FUENTE [DEST]

Inicialice un nuevo repositorio y directorio de trabajo que comparta su historial (y opcionalmente
favoritos) con otro repositorio.

Tenga en cuenta que el uso de reversiones o extensiones que destruyen/modifican el historial (mq, rebase, etc.) puede
causar una confusión considerable con los clones compartidos. En particular, si dos comparten
los clones se actualizan al mismo conjunto de cambios, y uno de ellos destruye eso
conjunto de cambios con reversión, el otro clon dejará de funcionar repentinamente: todas las operaciones
fallará con "abortar: el directorio de trabajo tiene un padre desconocido". el unico conocido
la solución es usar debugsetparents en el clon roto para restablecerlo a un conjunto de cambios
que todavía existe.

Opciones:

-Tú, --ninguna actualización
no cree un directorio de trabajo

-B, - marcadores
también compartir marcadores

dejar de compartir
convertir un repositorio compartido a uno normal:

dejar de compartir

Copie los datos de la tienda en el repositorio y elimine los datos de la ruta compartida.

dejar de lado
guardar y restaurar cambios en el directorio de trabajo

El comando "hg shelve" guarda los cambios realizados en el directorio de trabajo y los revierte.
cambios, restableciendo el directorio de trabajo a un estado limpio.

Posteriormente, el comando "hg unshelve" restaura los cambios guardados por "hg shelve". Los cambios pueden
restaurarse incluso después de actualizar a un padre diferente, en cuyo caso la fusión de Mercurial
maquinaria resolverá cualquier conflicto si es necesario.

Puede tener más de un cambio archivado pendiente a la vez; cada cambio archivado tiene un
nombre distinto. Para obtener más información, consulte la ayuda de "hg shelve".

Comandos
dejar de lado
guarde y reserve los cambios del directorio de trabajo:

hg estantería [OPCIÓN]... [ARCHIVO]...

Shelving toma archivos que "hg status" informa como no limpios, guarda las modificaciones en un
paquete (un cambio archivado), y revierte los archivos para que su estado en el trabajo
directorio se vuelve limpio.

Para restaurar estos cambios en el directorio de trabajo, utilice "hg unshelve"; esto funcionará
incluso si cambia a una confirmación diferente.

Cuando no se especifica ningún archivo, "hg shelve" guarda todos los archivos que no están limpios. Si archivos específicos o
se nombran los directorios, solo se archivan los cambios en esos archivos.

Cada cambio archivado tiene un nombre que facilita encontrarlo más tarde. El nombre de un archivado
cambie los valores predeterminados para que se basen en el marcador activo, o si no hay ningún marcador activo,
la rama nombrada actual. Para especificar un nombre diferente, use --nombre.

Para ver una lista de los cambios archivados existentes, utilice el --lista opción. Por cada cambio archivado,
esto imprimirá su nombre, edad y descripción; usar --parche or --estat para más información.

Para eliminar cambios archivados específicos, utilice --Eliminar. Para eliminar todos los cambios archivados, use
--limpiar.

Opciones:

-UN, --agregar eliminar
marcar archivos nuevos/faltantes como agregados/eliminados antes de archivar

-tu, --desconocido
almacenar archivos desconocidos en la estantería

--limpiar
eliminar todos los cambios archivados

--fecha
archivar con la fecha de confirmación especificada

-D, --Eliminar
elimine los cambios archivados nombrados

-mi, --editar
invocar editor en mensajes de confirmación

-yo, --lista
enumerar los estantes actuales

-metro,--mensaje
usar texto como mensaje de archivo

-norte,--nombre
use el nombre dado para la confirmación archivada

-pag, --parche
mostrar parche

-I, --interactivo
modo interactivo, solo funciona mientras se crea una estantería

--estat resumen de cambios de estilo diffstat de salida

-YO,--incluir
incluir nombres que coincidan con los patrones dados

-X,--excluir
excluir nombres que coincidan con los patrones dados

[+] la opción marcada se puede especificar varias veces

desalojar
restaurar un cambio archivado en el directorio de trabajo:

hg desarchivar [SHELVED]

Este comando acepta un nombre opcional de un cambio archivado para restaurar. Si no se da ninguno,
se utiliza el cambio archivado más reciente.

Si un cambio archivado se aplica con éxito, el paquete que contiene los cambios archivados
se mueve a una ubicación de copia de seguridad (.hg/shelve-backup).

Dado que puede restaurar un cambio archivado sobre una confirmación arbitraria, es posible que
desarchivar resultará en un conflicto entre sus cambios y las confirmaciones que está
desmontando sobre. Si esto ocurre, debe resolver el conflicto y luego usar --Seguir a
completar la operación de desarchivar. (El paquete no se moverá hasta que lo haya hecho correctamente).
completar el desarchivar.)

(Alternativamente, puede usar --abortar abandonar un desarchivado que provoque un conflicto. Este
revierte los cambios no archivados y deja el paquete en su lugar).

Después de desarchivar correctamente, los cambios archivados se almacenan en un directorio de copia de seguridad. Solamente
se conservan las N copias de seguridad más recientes. N por defecto es 10 pero se puede anular usando el
archivar.maxbackups opción de configuración.

La marca de tiempo en segundos se utiliza para decidir el orden de las copias de seguridad. Más que copias de seguridad máximas las copias de seguridad son
guardados, si la misma marca de tiempo impide decidir el orden exacto de ellos, por seguridad.

Opciones:

-a --abortar
abortar una operación de desarchivado incompleta

-C, --Seguir
continuar una operación de desarchivado incompleta

-k, --guardar
mantener estantería después de desarchivar

-t,--herramienta
especificar herramienta de combinación

--fecha
establecer fecha para compromisos temporales (DEPRECATED)

tira
Eliminar conjuntos de cambios y sus descendientes de la historia.

Esta extensión le permite eliminar los conjuntos de cambios y todos sus descendientes del
repositorio. Consulte la ayuda del comando para obtener más información.

Comandos
tira
quitar los conjuntos de cambios y todos sus descendientes del repositorio:

tira hg [-k] [-f] [-B marcador] [-r] REV...

El comando strip elimina los conjuntos de cambios especificados y todos sus descendientes. Si el
directorio de trabajo tiene cambios no confirmados, la operación se cancela a menos que --force
se proporciona la bandera, en cuyo caso se descartarán los cambios.

Si se elimina un padre del directorio de trabajo, entonces el directorio de trabajo
se actualizará automáticamente al ancestro disponible más reciente del padre despojado
después de que se complete la operación.

Todos los conjuntos de cambios eliminados se almacenan en .hg / strip-backup como un paquete (ver hg ayuda liar y
hg ayuda desagregar). Se pueden restaurar ejecutando hg desagregar .hg/strip-backup/PAQUETE,
donde BUNDLE es el archivo de paquete creado por la tira. Tenga en cuenta que los números de revisión locales
será en general diferente después de la restauración.

Utilice la opción --no-backup para descartar el paquete de copia de seguridad una vez que finalice la operación.

Strip no es una operación de reescritura de la historia y se puede usar en conjuntos de cambios en el público
fase. Pero si los conjuntos de cambios eliminados se enviaron a un repositorio remoto,
probablemente tire de ellos de nuevo.

Devuelve 0 en caso de éxito.

Opciones:

-r,--Rvdo
eliminar la revisión especificada (opcional, puede especificar revisiones sin esta opción)

-F, --fuerza
forzar la eliminación de conjuntos de cambios, descartar cambios no confirmados (sin copia de seguridad)

--sin respaldo
sin copias de seguridad

--sin respaldo
sin copias de seguridad (DEPRECADO)

-n ignorado (DEPRECADO)

-k, --guardar
no modifique el directorio de trabajo durante la tira

-B,--marcador
eliminar las revoluciones solo accesibles desde un marcador determinado

[+] la opción marcada se puede especificar varias veces

trasplante
comando para trasplantar conjuntos de cambios de otra rama

Esta extensión le permite trasplantar cambios a otra revisión principal, posiblemente en
otro repositorio. El trasplante se realiza mediante parches 'diff'.

Los parches trasplantados se registran en .hg/transplant/transplants, como un mapa de un conjunto de cambios
hash a su hash en el repositorio fuente.

Comandos
trasplante
trasplantar conjuntos de cambios de otra rama:

hg trasplante [-s REPO] [-b RAMA [-a]] [-p REV] [-m REV] [REV]...

Los conjuntos de cambios seleccionados se aplicarán sobre el directorio de trabajo actual con el registro
del conjunto de cambios original. Los conjuntos de cambios se copian y, por lo tanto, aparecerán dos veces en el
historia con diferentes identidades.

Considere usar el comando de injerto si todo está dentro del mismo repositorio; usará
fusiona y por lo general dará un mejor resultado. Use la extensión de rebase si los conjuntos de cambios
no están publicados y desea moverlos en lugar de copiarlos.

Si se especifica --log, los mensajes de registro tendrán un comentario adjunto con la forma:

(trasplantado de CHANGESETHASH)

Puede reescribir el mensaje de registro de cambios con la opción --filter. Su argumento será
invocado con el mensaje de registro de cambios actual como $1 y el parche como $2.

--source/-s especifica otro repositorio a usar para seleccionar conjuntos de cambios, como si fuera
había sido retirado temporalmente. Si se especifica --branch/-b, estas revisiones se usarán como
cabezas al decidir qué conjuntos de cambios trasplantar, como si solo estas revisiones hubieran
ha sido tirado Si se especifica --all/-a, todas las revisiones hasta los encabezados especificados con
--la rama será trasplantada.

Ejemplo:

· trasplanta todos los cambios hasta REV además de tu revisión actual:

hg trasplante --rama REV --todos

Opcionalmente, puede marcar los conjuntos de cambios trasplantados seleccionados como conjuntos de cambios combinados. No lo harás
se le pedirá que traslade cualquier ancestro de un trasplante fusionado, y puede fusionar
descendientes de ellos normalmente en lugar de trasplantarlos.

Los conjuntos de cambios combinados se pueden trasplantar directamente especificando el conjunto de cambios principal adecuado mediante
llamar hg trasplante --padre.

Si no se proporcionan fusiones o revisiones, hg trasplante comenzará un conjunto de cambios interactivo
navegador.

Si una aplicación de conjunto de cambios falla, puede arreglar la combinación a mano y luego reanudar donde
dejado por llamar hg trasplante --continuar/-c.

Opciones:

-s,--fuente
trasplantar conjuntos de cambios de REPO

-B,--rama
use este conjunto de cambios de origen como encabezado

-a --todas
extraiga todos los conjuntos de cambios hasta las revisiones de --branch

-pag,--ciruela pasa
saltar sobre REV

-metro,--unir
fusionarse en REV

--padre
padre a elegir al trasplantar fusionar

-mi, --editar
invocar editor en mensajes de confirmación

--Iniciar sesión agregar información de trasplante al mensaje de registro

-C, --Seguir
continuar con la última sesión de trasplante después de solucionar los conflictos

--filtrar
filtrar conjuntos de cambios a través del comando

[+] la opción marcada se puede especificar varias veces

win32mbcs
Permitir el uso de rutas MBCS con codificaciones problemáticas.

Algunas codificaciones MBCS no son buenas para algunas operaciones de ruta (es decir, división de ruta, caso
conversión, etc.) con sus bytes codificados. Llamamos a tal codificación (es decir, shift_jis y
big5) como "codificación problemática". Esta extensión se puede utilizar para solucionar el problema con aquellos
codificaciones ajustando algunas funciones para convertirlas en una cadena Unicode antes de la operación de ruta.

Esta extensión es útil para:

· Usuarios japoneses de Windows que utilizan la codificación shift_jis.

· Usuarios chinos de Windows que utilizan la codificación big5.

· Todos los usuarios que usan un repositorio con una de codificaciones problemáticas en mayúsculas y minúsculas
sistema de archivos.

Esta extensión no es necesaria para:

· Cualquier usuario que use solo caracteres ASCII en la ruta.

· Cualquier usuario que no utilice ninguna de las codificaciones problemáticas.

Tenga en cuenta que existen algunas limitaciones en el uso de esta extensión:

· Debe usar codificación única en un repositorio.

· Si la ruta del repositorio termina en 0x5c, no se puede leer .hg/hgrc.

· win32mbcs no es compatible con la extensión fixutf8.

De forma predeterminada, win32mbcs utiliza la codificación. La codificación decidida por Mercurial. Puede especificar el
codificación por opción de configuración:

[win32mbcs]
codificación = sjis

Es útil para los usuarios que desean comprometerse con el mensaje de registro UTF-8.

texto win32
realizar la conversión automática de salto de línea (DEPRECATED)

Obsoleto: la extensión win32text requiere que cada usuario configure la extensión
una y otra vez para cada clon ya que la configuración no se copia al clonar.

Por lo tanto, hemos hecho la eol como alternativa. Él eol utiliza una versión controlada
archivo para su configuración y, por lo tanto, cada clon utilizará la configuración correcta de
el comienzo.

Para realizar la conversión automática de nueva línea, utilice:

[extensiones]
textowin32 =
[codificar]
** = codificación inteligente:
# o ** = macencode:

[descodificar]
** = decodificación inteligente:
# o ** = macdecode:

Si no realiza la conversión, para asegurarse de no cometer CRLF/CR por accidente:

[manos]
pretxncommit.crlf = python:hgext.win32text.forbidcrlf
# o pretxncommit.cr = python:hgext.win32text.forbidcr

Para hacer la misma verificación en un servidor para evitar que CRLF/CR sea empujado o tirado:

[manos]
pretxnchangegroup.crlf = python:hgext.win32text.forbidcrlf
# o pretxnchangegroup.cr = python:hgext.win32text.forbidcr

zeroconf
descubrir y publicitar repositorios en la red local

La extensión zeroconf anunciará hg ayudar instancias sobre DNS-SD para que puedan ser
descubierto utilizando el hg caminos comando sin conocer la dirección del servidor.

Para permitir que otras personas descubran su repositorio usando ejecutar hg ayudar en su repositorio:

$ cd prueba
$ hg servir

Puede descubrir repositorios habilitados para Zeroconf ejecutando hg caminos:

caminos de $ hg
prueba zc = http://example.com:8000/prueba

Use hg en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

  • 1
    AstrOrzPlayer
    AstrOrzPlayer
    AstrOrz Player es un reproductor multimedia gratuito
    software, parte basado en WMP y VLC. los
    jugador tiene un estilo minimalista, con
    más de diez colores temáticos, y también puede
    b ...
    Descargar AstrOrzPlayer
  • 2
    movistartv
    movistartv
    Kodi Movistar+ TV es un ADDON para XBMC/
    Kodi que permite deshacerse de un
    decodificador de los servicios IPTV de
    Movistar integrado en uno de los
    mediacenters ma...
    descargar movistartv
  • 3
    Código :: Bloques
    Código :: Bloques
    Code::Blocks es un programa gratuito, de código abierto,
    IDE multiplataforma C, C++ y Fortran
    construido para satisfacer las necesidades más exigentes
    de sus usuarios. Está diseñado para ser muy
    extens ...
    Descargar Código::Bloques
  • 4
    En medio de
    En medio de
    Interfaz de Minecraft en medio o avanzada
    y el seguimiento de datos / estructura es una herramienta para
    mostrar una descripción general de un Minecraft
    mundo, sin realmente crearlo. Eso
    puede ...
    Descargar en medio
  • 5
    MSYS2
    MSYS2
    MSYS2 es una colección de herramientas y
    bibliotecas que le proporcionan una
    entorno fácil de usar para la construcción,
    instalar y ejecutar Windows nativo
    software. Con ...
    Descargar MSYS2
  • 6
    libjpeg-turbo
    libjpeg-turbo
    libjpeg-turbo es un códec de imagen JPEG
    que usa instrucciones SIMD (MMX, SSE2,
    NEON, AltiVec) para acelerar la línea de base
    Compresión y descompresión JPEG activadas
    x86, x8 ...
    Descargar libjpeg-turbo
  • Más "

Comandos de Linux

  • 1
    abi-rastreador
    abi-rastreador
    abi-tracker: visualiza los cambios de ABI
    Línea de tiempo de una biblioteca de software C/C++.
    DESCRIPCIÓN: NOMBRE: ABI Tracker
    (abi-tracker) Visualizar los cambios de ABI
    línea de tiempo de un C/C+...
    Ejecute abi-tracker
  • 2
    abicheck
    abicheck
    abicheck - comprobar los binarios de la aplicación
    para llamadas a símbolos privados o en evolución
    en bibliotecas y para enlaces estáticos de
    algunas bibliotecas del sistema. ...
    Ejecutar abicheck
  • 3
    mensajeromlm
    mensajeromlm
    couriermlm - La lista de correo de Courier
    gerente ...
    Ejecutar couriermlm
  • 4
    mensajeríacpd
    mensajeríacpd
    couriertcpd - el servidor de correo Courier
    Demonio del servidor TCP...
    Ejecutar couriertcpd
  • 5
    gbklátex
    gbklátex
    bg5latex - Usa LaTeX directamente en un Big5
    archivo de texto codificado bg5pdflatex - Uso
    pdfLaTeX directamente en un Big5 encodedtex
    archivo bg5+latex - Use LaTeX directamente en un
    5+ grandes...
    Ejecutar gbklatex
  • 6
    gbkpdflátex
    gbkpdflátex
    bg5latex - Usa LaTeX directamente en un Big5
    archivo de texto codificado bg5pdflatex - Uso
    pdfLaTeX directamente en un Big5 encodedtex
    archivo bg5+latex - Use LaTeX directamente en un
    5+ grandes...
    Ejecutar gbkpdflatex
  • Más "

Ad