Para usar el cliente de línea de comando, debe teclear svn, el subcomando que desea usar [54], y cualquier parámetro u objetivos sobre los cuales desea operar—no hay un orden específico en el cual deben aparecer los subcomandos y parámetros. Por ejemplo, todos los siguientes ejemplos de uso de svn status son válidos:
$ svn -v status $ svn status -v $ svn status -v myfile
Puede encontrar más ejemplos de cómo usar la mayoría de los comandos del cliente en Capítulo 3, Recorrido guiado y comandos para manejar propiedades en “Propiedades”.
Aunque Subversion tiene diferentes parámetros para sus
subcomandos, todos los parámetros son globales—es
decir, se garantiza que cada parámetro significa la misma
cosa sin importar el subcomando que use. Por ejemplo,
--verbose
(-v
) siempre
significa “salida abundante de mensajes”,
sin importar el subcomando con el que lo use.
--auto-props
Activa auto propiedades, reemplazando la directiva
enable-auto-props
del fichero
config
.
--config-dir
DIR
Indica a Subversion que lea la información de
configuración del directorio especificado en lugar del
lugar por defecto (.subversion
en el directorio home del usuario).
--diff-cmd
CMD
Especifica el programa externo que desea usar para
mostrar las diferencias entre ficheros. Cuando invoca
svn diff, usa el motor diferencial
interno de Subversion, el cual genera ficheros
diferenciales en formato unificado por defecto. Si
quiere usar un programa de diferenciación externo, use
--diff-cmd
. Puede pasar parámetros
a su programa de diferenciación con el parámetro
--extensions
(más sobre esto adelante
en esta sección).
--diff3-cmd
CMD
Especifica el programa externo que desea usar para fusionar los ficheros.
--dry-run
Recorre todo el proceso interno de la ejecución del comando, pero en realidad no se realizan cambios—ya sea en disco o en el repositorio.
--editor-cmd
CMD
Especifica el programa externo que desea usar para modificar mensajes de informes de cambios o valores de propiedades.
--encoding
ENC
Indica a Subversion que el mensaje que escribe al enviar cambios al repositorio está en la codificación indicada. Por defecto se usa la configuración local nativa de su sistema operativo, y debería especificar la codificación si sus mensajes de cambios están en otra codificación.
--extensions
(-x
)
ARGS
Especifica un parámetro o varios que Subversion
debe pasar al comando de diferenciación externo cuando
se muestran diferencias entre ficheros. Si desea
pasar múltiples argumentos, debe entrecomillarlos
todos (por ejemplo, svn diff --diff-cmd
/usr/bin/diff -x "-b -E"). Este parámetro
sólo puede ser usado si también
usa el parámetro --diff-cmd
.
--file
(-F
)
FILENAME
Usa el contenido del fichero pasado como argumento de este parámetro para el subcomando especificado.
--force
Obliga la ejecución de un comando u operación particular. Hay algunas operaciones que Subversion evitará hacer durante un uso normal, pero puede pasar el parámetro de forzado para decirle a Subversion “Se lo que estoy haciendo y las posibles repercusiones de mis actos, así que déjame hacerlos”. Este parámetro es el equivalente programático de realizar algún trabajo eléctrico sin desconectar la corriente—si no sabe lo que está haciendo, es probable que consiga una desagradable electrocución.
--force-log
Obliga la aceptación de parámetros sospechosos
usados con las opciones --message
(-m
) o --file
(-F
). Por defecto, Subversion
producirá un error si los parámetros de estas opciones
perecen ser objetivos del subcomando. Por ejemplo,
si pasa la ruta de un fichero versionado a la opción
--file
(-F
),
Subversion asumirá que ha cometido un fallo,
y que esa ruta era en realidad el objetivo de la
operación, y simplemente se equivocó al indicar
el fichero—no versionado—que contiene
el registro de mensajes de cambios. Para confirmar
su intención y anular este tipo de errores, pase la
opción --force-log
a comandos que
aceptan mensajes de cambios.
--help
(-h
o
-?
)
Si se usa con uno o más subcomandos, muestra la ayuda de texto empotrada en el cliente para cada subcomando. Si se usa sin nada más, muestra la ayuda de texto genérica del cliente.
--ignore-ancestry
Indica a Subversion que ignore la ascendencia cuando calcule diferencias (sólo usará el contenido de las rutas).
--incremental
Muestra la salida en un formato que permite la concatenación.
--message
(-m
)
MESSAGE
Indica que especificará el mensaje del informe de cambios en la línea de comando, siguiendo al parámetro. Por ejemplo:
$ svn commit -m "They don't make Sunday."
--new
ARG
Usa ARG
como el objetivo
nuevo.
--no-auth-cache
Previene el cacheado de información de autenticación (ej: nombre de usuario y clave de acceso) en los directorios administrativos de Subversion.
--no-auto-props
Desactiva las propiedades automáticas, reemplazando
la directiva enable-auto-props
del fichero config
.
--no-diff-deleted
Evita que Subversion muestre diferencias para ficheros borrados. El comportamiento por defecto cuando elimina un fichero es que svn diff imprima las mismas diferencias que vería si hubiese dejado el fichero pero eliminando su contenido.
--no-ignore
Muestra ficheros en el listado de estado que
normalmente serían omitidos debido a que
coinciden con un patrón de la propiedad
svn:ignore
. Vea “Config” para más
información.
--non-interactive
En el caso de un fallo de autenticación, o credenciales insuficientes, evita que se soliciten las credenciales (ej: nombre de usuario o clave). Esto es útil si está ejecutando Subversion dentro de un script automático y le resulta más apropiado que Subversion falle en lugar de pedir más información de manera interactiva.
--non-recursive
(-N
)
Evita que un subcomando entre de manera recursiva en subdirectorios. La mayoría de los subcomandos son recursivos por defecto, pero algunos subcomandos—normalmente aquellos que tienen el potencial de borrar o deshacer sus modificaciones locales—no lo son.
--notice-ancestry
Presta atención a la ascendencia cuando calcula diferencias.
--old
ARG
Usa ARG
como el objetivo
antiguo.
--password
PASS
Indica en la línea de comando la palabra clave para la autenticación—de otro modo, siempre que sea necesario, Subversion le preguntará por ella.
--quiet
(-q
)
Solicita que el cliente imprima solamente la información esencial mientras realiza su operación.
--recursive
(-R
)
Obliga a un subcomando a que entre de manera recursiva en subdirectorios. La mayoría de los subcomandos son recursivos por defecto.
--relocate
FROM TO
[PATH...]
Usado con el subcomando svn switch, cambia la ubicación del repositorio que su copia local de trabajo referencia. Esto es útil si la ubicación de su repositorio cambia y tiene una copia local existente que querría continuar usando. Consulte svn switch para ver un ejemplo.
--revision
(-r
)
REV
Indica que va a proporcionar una revisión (o rango de revisiones) para una operación en particular. Puede proporcionar números de revisión, palabras clave o fechas (rodeadas por llaves), como argumentos del parámetro de revisión. Si quiere proporcionar un rango de revisiones, puede proporcionar dos revisiones separadas por dos puntos. Por ejemplo:
$ svn log -r 1729 $ svn log -r 1729:HEAD $ svn log -r 1729:1744 $ svn log -r {2001-12-04}:{2002-02-17} $ svn log -r 1729:{2002-02-17}
Vea “Palabras clave de la revisión” para obtener más información.
--revprop
Opera sobre una propiedad de revisión en lugar de
una propiedad Subversion particular de un
fichero o directorio. Este parámetro requiere
que también indique la revisión con el parámetro
--revision
(-r
). Vea
“Propiedades no versionadas” para más detalles
sobre propiedades no versionadas.
--show-updates
(-u
)
Hace que el cliente muestre la información sobre qué ficheros de su copia local de trabajo no están actualizados. Esto realmente no actualiza ninguno de sus ficheros—solamente muestra qué ficheros serían actualizados en caso de ejecutar svn update.
--stop-on-copy
Hace que el subcomando de Subversion que está recorriendo la historia de un recurso versionado deje de procesar esa información histórica cuando encuentre una copia—es decir, un punto en la historia cuando el recurso fue copiado desde otra ubicación del repositorio.
--strict
Hace que Subversion siga unas semánticas estrictas, una noción que es bastante vaga a no ser que hablemos de subcomandos específicos.
--targets
FILENAME
Indica a Subversion que obtenga un listado de los ficheros sobre los que usted desea operar a partir del fichero proporcionado en lugar de listar todos sus nombres en la línea de comando.
--username
NAME
Indica que está proporcionando su nombre de usuario para la autenticación en la línea de comando—de lo contrario, si es necesario, Subversion le preguntará por el.
--verbose
(-v
)
Solicita que el cliente imprima tanta información como sea posible mientras ejecuta cualquier subcomando. Esto puede tener como resultado que Subversion imprima campos adicionales, información detallada sobre cada fichero, o información adicional relacionada con las acciones que toma.
--version
Imprime la información de versión del cliente. Esta información no sólo incluye el número del cliente, sino que también muestra un listado de todos los módulos de acceso a repositorio que el cliente puede usar para acceder a repositorios de Subversion.
--xml
Imprime la salida en formato XML.
[54] Si, de acuerdo, no necesita un subcomando para
usar el parámetro --version
, pero llegaremos
a esto en un minuto.