2022/09/06 19:53:28 (r29447)
Tabla de contenidos
Lista de figuras
Lista de tablas
Tabla de contenidos
Cuando trabaja en un proyecto, bien sea un proyecto de código abierto donde varias personas revisan su código, o un proyecto comercial donde vende un componente con su código fuente, habrá gente y clientes que pueden encontrar errores o quizás quieran mejorar su proyecto. Para hacerlo, ellos le enviarán parches que tendrá que revisar y decidir si desea aplicarlos.
TortoiseMerge le ayuda con ambas tareas:
Revisando parches
Aplicando los parches
TortoiseMerge también le ayuda a poner en orden los ficheros con conflictos, que pueden ser ocasionados si trabaja con un sistema de control de código fuente y otros están trabajando en los mismos ficheros que usted.
TortoiseMerge es gratis. No tiene que pagar por él, y puede utilizarlo de la forma que desee. Se desarrolla bajo la licencia GP (GPL).
TortoiseMerge is an Open Source project. That means you have full read access to the source code of this program. You can browse it on this link https://osdn.net/projects/tortoisesvn/scm/svn/. The most recent version (where we're currently working) is located under /trunk/
, and the released versions are located under /tags/
.
por el duro trabajo en TortoiseMerge
por los bonitos iconos, el logotipo, detección de errores y cuidar de la documentación
por algunos de los estilos que están siendo reutilizados en esta documentación
por los parches, informes de errores y nuevas ideas, y por ayudar a otros respondiendo preguntas de nuestra lista de correo.
por la cantidad de horas de entretenimiento con la música que nos enviaron
Tabla de contenidos
TortoiseMerge es una aplicación gratuita/de código abierto. Le permite ver las diferencias entre ficheros de texto, fusionar esos cambios e incluso revisar y aplicar ficheros de diff unificados, a menudo llamados parches.
Mientras trabaja con ficheros de texto, por ejemplo ficheros de código en su lenguaje de programación favorito, o ficheros html/xml para su documentación o sitio web, a menudo tendrá situaciones donde desee comparar versiones diferentes de esos ficheros. A veces obtiene una versión diferente de alguien, a veces querrá ver los cambios que ha hecho.
Si está trabajando con un sistema de control de versiones (por ejemplo Subversion) a veces obtendrá conflictos cuando actualice su copia de trabajo. Esto ocurre si alguien ha modificado las mismas partes que usted del fichero en el que está trabajando. En esos casos tendrá que resolver esos conflictos manualmente. Aquí es donde TortoiseMerge puede ayudarle.
El siguiente diagrama le muestra las relaciones entre los ficheros involucrados en un conflicto:
While working on TortoiseSVN we found that whenever users sent in patches to enhance the project or just to fix bugs, we had a lot of work just applying those patches. And many times those patches were outdated and couldn't be applied with the command line patch tool https://unxutils.sourceforge.net/ because we were working on those files and had sometimes changed those files already.
Esta era también la razón principal por la que TortoiseSVN no tenía implementada una opción
→ : preferíamos que los usuarios nos enviaran los ficheros completos porque así era más fácil aplicar los parches.Así que gastamos mucho tiempo buscando en internet una herramienta GUI que pudiera aplicar ficheros de parche, pero todo lo que encontramos es que dicha herramienta no existía. Para acortar un poco una larga historia: decidimos que si nadie más podía proporcionarnos dicha herramienta tendríamos que escribirla nosotros. Ahí fue cuando nació TortoiseMerge.
Dado que TortoiseSVN ya utiliza la librería de Subversion, que contiene un buen motor de diferencias, era natural que utilizáramos esa librería en vez del diff de GNU.
Subversion 1.7 introduced the svn patch command which allows to apply a patch file to a working copy. TortoiseMerge uses now the same functions as the Subversion command to avoid different behaviors between the two.
Tabla de contenidos
TortoiseMergetiene diferentes usos:
Viendo las diferencias entre dos ficheros y fusionando los cambios en uno de ellos, o eliminando cambios no deseados.
Editando conflictos entre cambios locales y cambios en el repositorio de Subversion tras una actualización.
Applying patch files and reviewing them.
En este modo está comparando dos ficheros. El fichero del panel izquierdo se considera el fichero original (a veces referido como de ellos) y el fichero en el panel derecho es el fichero modificado (a veces referido como mío).
Puede efectuar cambios simples basados-en-línea al fichero en el panel derecho, entre otros:
Revirtiendo líneas cambiadas a como se muestran en el panel izquierdo.
Utilizando una combinación de ambos bloques, bien el de ellos antes del mío, o bien el mío antes que el de ellos.
También puede editar el fichero de salida tal y como lo haría en un editor de texto. Las líneas que cambie de esta forma se marcarán utilizando un icono de un lápiz. Por favor, tenga en cuenta que si desea hacer alguno de los cambios basados en línea o bloque descritos anteriormente, es mejor que lo haga al principio: una vez que empiece a editar el fichero, TortoiseMerge no podrá mantener la relación de las líneas con los ficheros originales.
Esto a veces se denomina fusión a tres bandas, y se muestra en tres paneles. Aunque realmente hay cuatro ficheros involucrados. El fichero queno se muestra es el fichero base común, el último ancestro común de los dos ficheros que ahora están en conficto. Las relaciones entre los tres ficheros se explican en el diagrama siguiente:
El fichero base representa la versión más antigua del fichero, desde donde Usted y Otros empezaron a hacer cambios. Mío representa el fichero base con todos los cambios que usted ha hecho, y De otros es el fichero con todos los cambios que cualquier otro ha hecho al fichero. El panel izquierdo le muestra los cambios en de otros respecto a su fichero base, y el panel derecho le muestra los cambios en mío relativos al fichero base. El panel inferior es el fichero resultado que es donde intenta resolver los conflictos.
En la vista de resolución de conflictos, puede elegir utilizar bloques míos, o de ellos, o ambos. Pero en este caso, los cambios se muestran en el panel inferior.
Un fichero de parche es un fichero de diff unificado de Subversion, que contiene la información necesaria para aplicar cambios a un conjunto de ficheros. El parche puede haber sido proporcionado por otro desarrollador para que pueda ver sus cambios y posiblemente confirmarlos en el repositorio. O puede haber sido generado internamente por TortoiseSVN cuando compara dos carpetas. Esto ocurre cuando compara una revisión del repositorio con una carpeta de copia de trabajo, o si compara dos revisiones diferentes del repositorio, o si compara dos rutas de repositorio diferentes.
En cada caso TortoiseMerge mostrará una pequeña ventana mostrando los ficheros incluídos en el parche. Al hacer doble click en uno de estos ficheros, se obitene el fichero relevante y se aplican los cambios. El panel izquierdo muestra el contenido original del fichero y el panel derecho muestra cómo queda tras aplicar el parche.
Puede editar el fichero en el panel derecho exactamente igual que lo haría en el modo de comparación/edición.
Tabla de contenidos
TortoiseMerge tiene tres modos de vista principales: un panel, dos paneles y tres paneles. La vista de uno o dos paneles se utiliza para ver cambios, y la vista de tres paneles se utiliza para resolver conflictos.
La vista de dos paneles tiene algunas funcionalidades que no están disponibles en la vista de un panel:
Los cambios dentro de las líneas modificadas se muestran con colores diferentes. Las partes añadidas en la cadena se muestran con un color claro, aunque por supuesto puede configurar los colores utilizados aquí. Las partes eliminadas se indican con una línea vertical marrón oscura en la cadena. Observe la captura de pantalla anterior para ver cómo funciona.
Reorganizar código a menudo significa un montón de cambios en los espacios en blanco (espacios, tabuladores, nuevas líneas) pero no cambios reales en el código. Por ejemplo, divide una línea muy larga en varias líneas, o a veces junta varias líneas en una única.
Dichos cambios se marcan con un círculo blanco en la parte izquierda de las vistas. Si observa dicho círculo blanco, inmediatamente sabrá que no se ha cambiado realmente nada ahí y no tendrá que seguir comprobando el bloque cambiado.
Hand editing of the file in the right pane is possible in two-pane view. Such changes are marked with a pencil symbol. Hand editing of the file in the left pane is also possible, only when
is pressed when the left pane is active.Si quiere comparar/fusionar tres ficheros, TortoiseMerge le mostrará las diferencias en una vista de tres paneles. Esta vista también se utiliza si necesita resolver ficheros en conflicto.
El panel izquierdo le muestra las diferencias entre el fichero De otros y el fichero Base, mientras que el panel derecho le muestra las diferencias entre el fichero Mío y el fichero Base. El panel inferior le muestra el resultado de fusionar los ficheros Base, Mío y el De otros con posibles conflictos.
Si pasa el ratón por encima del título del panel, una etiqueta de ayuda le mostrará los nombres de ficheros utilizados para las diferencias en cada panel.
Hand editing of the file in the left pane or right pane is also possible, only when
is pressed when that pane is active.Cuando TortoiseMerge termine de parsear el fichero de parche, le mostrará una pequeña ventana con todos los ficheros que tienen cambios según el fichero de parche.
Si el nombre del fichero se muestra en negro, el parche se puede aplicar sin problemas. Eso significa que el fichero no está desactualizado según el parche. Sin embargo, si el nombre del fichero se muestra en rojo, entonces el parche no se puede aplicar directamente porque ya ha cambiado ese fichero.
La ventana del archivo parche tiene un menú contextual que le permitirá previsualizar el efecto del parche en el archivo actual (aplicar sin guardar), aplicar y guardar los cambios para el archivo seleccionado, o aplicar y guardar los cambios to todos los archivos de la lista. Si hace doble clic se previsualizarán los cambios.
Depending on your setting, you either see a toolbar or a ribbon with many buttons. The buttons all show a tooltip explaining their function when you hover the mouse pointer over them.
En la parte izquierda de la ventana está una barra de lugar. Esto proporciona una rápida referencia visual de dónde están los cambios en el fichero. La barra tiene tres columnas. La columna izquierda se refiere al panel izquierdo, la columna derecha al panel derecho, y la columna central al panel inferior (si está presente). En la vista de un solo panel sólo se utiliza la columna izquierda. La barra de lugar se puede utilizar también como una barra para mover todas las ventanas simultáneamente.
Si haces doble clic sobre una palabra, entonces cada una de las apariciones de esa palabra será resaltada en todo el documento, tanto en los páneles principales como en la barra de localización. Para remover el resaltado haz doble clic de nuevo sobre la palabra.
Si hace clic en el margen izquierdo, o si hace triple clic dentro de una línea, esa línea entera se seleccionará.
Below the bottom window is the status bar. This shows the number of lines added and deleted in Theirs
and Mine
, and the number of unresolved conflicts remaining.
The status bar also contains combo box controls which indicate how the files are handled and treated:
The encoding specifies how the characters in the views are loaded/saved and shown. The most common encoding in English is ASCII (which means the local encoding of the OS language), but you can change this to be UTF8, UTF16LE, UTF16BE, UTF32LE and UTF32BE, both with or without a byte order mark (BOM).
The most common line endings on Windows is CRLF, but you can change the line endings to whatever you like. Note that if you change the line endings, then all line endings in the whole file will change, even if when loaded the line endings were not all the same.
The option at the top of the combo box menu indicates whether tabs or spaces are inserted when you press the tab key. The smart tab char option if enabled uses an algorithm to determine whether one or the other is best used.
The tab size specifies how many space chars are inserted when editing and pressing the tab char, or how many chars the next word is indented when a tab char is encountered.
Las líneas cambiadas se marcan con un icono para indicar qué tipo de cambio ocurrió.
Se añadió una línea.
Se eliminó una línea.
Se deshizo un cambio revirtiendo al contenido original de la línea.
Esta línea sólo contiene cambios en los espacios en blanco. Donde aparezcan líneas consecutivas marcadas, el párrafo puede haberse reformateado, causando que las palabras se cambien a las líneas adyacentes.
Se ha editado la línea a mano, utilizando TortoiseMerge como editor de texto.
Esta línea está en conflicto.
Esta línea está en conflicto, pero el efecto está oculto por la configuración de los espacios en blanco o de los finales de línea.
This line is detected as being moved from / to another location.
TortoiseMerge no sólo le muestra las diferencias entre los ficheros, sino que también le permite resolver conflictos o aplicar cambios.
If you're in two pane view, then you can only edit the file in the right pane (Mine
). To apply changes made in the left file (Theirs
), right click on the changed lines and select → . Then the changes from the left file are added to the right file.
A veces en realidad querrá utilizar ambos bloques de texto, y el menú contextual también le ofrece
→ y → .También puede editar el fichero de salida tal y como lo haría en un editor de texto. Las líneas que cambie de esta forma se marcarán utilizando un icono de un lápiz. Por favor, tenga en cuenta que si desea hacer alguno de los cambios basados en línea o bloque descritos anteriormente, es mejor que lo haga al principio: una vez que empiece a editar el fichero, TortoiseMerge no podrá mantener la relación de las líneas con los ficheros originales.
If you're in three pane view (sometimes called merge view) you can only edit the file in the bottom view (Merged
). As in two pane view, you can right click on conflicted lines and either select → or → . In addition, if you want both blocks, you can select → or → . According to the command you've selected, the changes are used in the resulting Merged
file.
A veces un fichero se marcará como en conflicto en Subversion, pero cuando lo vea utilizando TortoiseMerge no se muestra ningún conflicto. Esto puede ser debido a su selección de la forma en la que se tratan los espacios en blanco. Si elige ignorar los cambios en el fin de línea o en los espacios en blanco, esas líneas se marcarán utilizando el icono Conflicto-Ignorado. Para resolver el conflicto aún necesitará elegir qué versión desea utilizar.
Tenga en cuenta que si utiliza TortoiseMerge sobre los mismos ficheros otra vez, cualquier cambio en su copia de trabajo, tanto si se hizo por TortoiseMerge o editándolo a mano, se descartará y el fichero aparecerá tal y como lo hizo cuando se inició por primera vez la edición de conflictos.
Cuando inicia TortoiseMerge sin ningún argumento en la línea de comandos tendrá que abrir los ficheros manualmente, utilizando
→ .Lo primero que tiene que hacer es decidir si sólo quiere comparar/fusionar ficheros, o si quiere aplicar un fichero de parche. Dependiendo de su elección, se activan las casillas de texto y los botones de navegación correspondientes.
Si quiere comparar/fusionar ficheros necesita establecer al menos dos de las tres posibles rutas para Base
, Mío
and De otros
. Si sólo selecciona dos ficheros, TortoiseMerge le mostrará las diferencias entre esos dos ficheros, en dos paneles o en un único panel.
Si quiere comparar/fusionar tres ficheros, TortoiseMerge le mostrará las diferencias en una vista de tres paneles. Esta vista se utiliza normalmente si necesita resolver ficheros en conflicto. El fichero de salida no se nombra en este caso y tendrá que utilizar
→ para guardar el resultado.Muchas de estas opciones son autoexplicativas, pero hay algunos pocos puntos que necesitan clarificarse.
Realizar copia de seguridad del archivo original renombra el fichero original en la copia de trabajo a nombre.bak
antes de guardar la versión modificada.
Default to UTF-8 encoding when set, ANSI files are loaded as UTF-8 encoded and saved as such when edited.
Max line length for inline diffs TortoiseMerge can get slow when showing inline diffs for very long lines. Because of that only lines that are shorter than 3000 chars are shown with inline diffs. You can change this value here.
Ignorar finales de línea oculta los cambios que se deben únicamente a la diferencia en el estilo de las terminaciones de las líneas.
Ignorar cambios de mayúsculas/minúsculas oculta los cambios que se deben únicamente a cambiar mayúsculas por minúsculas o viceversa dentro del texto. Esto puede ser útil con aplicaciones como Visual Basic, que cambia las mayúsculas en las variables sin avisar.
Este diálogo le permite seleccionar la codificación de colores de fondo que se utilizan para remarcar los diferentes cambios en las líneas.
Tabla de contenidos
Lista de atajos y comandos de teclado
Sale del programa
Copia el texto seleccionado al portapapeles
Cortar el texto seleccionado al portapapeles
Copiar el texto seleccionado desde el portapapeles
Deshacer las ultimas ediciones
Open the Find dialog for text searches and replaces
Abre los ficheros para ver las diferencias/fusionar
Guardar los cambios
Guardar como...
Ir a la siguiente diferencia
Ir a la diferencia previa
Recarga el fichero y revierte todos los cambios hechos
Cambia entre mostrar espacios en blanco o no
Alterna entre colapsar las secciones sin cambios o no
Alterna entre el ajuste de línea
Ir a la línea
Seleccionar todo el texto
Mueve el display a la izquierda/derecha
Switch between left/right/bottom view
Toggles between marking the selected change
Cambia entre la vista de un panel y la vista de dos paneles
Toggles between marking the selected change
Cambia las vistas
Usar bloque izquierdo
Tabla de contenidos
TortoiseMerge puede iniciarse con parámetros en la línea de comandos para evitar pasar por el diálogo Abrir y seleccionar los ficheros allí. Esto es útil si desea utilizar TortoiseMerge desde otra aplicación.
Most switches require additional information like a path or some other string. In those cases, append an ':' to the switch and put the string/path after it. Example:
/base:"c:\folder\my base file.txt"
Tabla B.1. Lista de las opciones de línea de comandos disponibles
Comando | Descripción |
---|---|
/? | Muestra un diálogo con los parámetros de la línea de comandos más importantes. |
/help | Lo mismo que ? . |
/base | Especifica el fichero base utilizado en las diferenciaciones en tres sentidos. Este es el ancestro común de los ficheros que están siendo diferenciados, aunque no se muestra en una ventana diferente. Para las diferenciaciones en dos sentidos, este es el fichero izquierdo. |
/basename | El nombre del fichero base. Esto se muestra en el título de la vista en vez de la ruta del fichero. Para diferenciaciones de tres sentidos se muestra en un texto de ayuda para el título de la vista. |
/basereflectedname | The name to use for editorconfig templates. |
/theirs | Especifica el fichero de ellos utilizado en las diferenciaciones de tres sentidos, mostrado en el panel izquierdo. |
/theirsname | El nombre del fichero de ellos. Esto se muestra en el título de la vista en vez de la ruta del fichero. |
/theirsreflectedname | The name to use for editorconfig templates. |
/mine | Especifica el fichero mío utilizado en las diferenciaciones en tres sentidos, mostrado en el panel derecho. Para las diferenciaciones en dos sentidos, este es el fichero derecho. |
/minename | El nombre del fichero mío. Esto se muestra en el título de la vista en vez de la ruta del fichero. |
/minereflectedname | The name to use for editorconfig templates. |
/merged |
Specifies the resulting merged file used in diffs. This is the file path where the result of the merge/conflict resolving is saved. If this is not set for a three-way diff, then TortoiseMerge will ask the user where to save the result. If this is not set for a two-way diff, then TortoiseMerge will automatically use the path of the file shown in the right view as the save path. |
/mergedname | El nombre del fichero fusionado. Esto se muestra en el título de la vista en vez de la ruta del fichero. |
/mergedreflectedname | The name to use for editorconfig templates. |
/patchpath | La ruta donde se debería aplicar un parche. Si no establece esta ruta, entonces TortoiseMerge intentará encontrar la ruta por sí mismo, de forma que encaje con las rutas en el fichero de parche, pero eso puede llevarle mucho tiempo. |
/saverequired | If specified, forces TortoiseMerge to ask to save the file before exiting, even if the user does not modify the files. |
/saverequiredonconflicts | If specified, forces TortoiseMerge to ask to save the file before exiting if there are conflicts found, even if the user does not modify the files. |
/patchoriginal | El nombre del fichero original a parchear. Utilizado para el título de la vista. |
/patchpatched | El nombre del fichero parcheado resultante. Utilizado para el título de la vista. |
/diff | La ruta del fichero de parche/diferencia a aplicar a un directorio. |
/oneway | Fuerza a TortoiseMerge a iniciar la vista de un sólo sentido en vez de la vista que el usuario especificó en la configuración. |
/reversedpatch | Cambia la vista derecha e izquierda de los dos ficheros especificados para diferenciar. |
/createunifieddiff | Crea un fichero de diff unificado (fichero de parche) de dos ficheros especificados con /origfile:"ruta_al_fichero_original" y /modifiedfile:"ruta_al_fichero_modificado" . La ruta de destino se establece con /outfile:"ruta_al_ficherodeparche_resultante" . Si /outfile no se establece, se muestra un diálogo de guardar fichero para que el usuario pueda elegir el lugar donde guardar el fichero de parche. Nota: si se establece /createunifieddiff , todos los demás parámetros se ignoran. |
/line | Especifica el número de línea donde ir una vez cargados los archivos. |
/readonly | Impide que el archivo sea editado. Esto significa que las capacidades de edición de TortoiseMerge estan deshabilitadas. |
/nosvnresolve | Prevents TortoiseMerge from asking whether to mark a file as resolved in SVN after saving it. |
You can also supply simple filenames on the command line for compatibility with other diff programs. In this simplified form the command line is
TortoiseMerge BaseFilePath MyFilePath [ TheirFilePath ]
If two files are given they will be compared with each other. If three files are given, the first is taken as the BASE file, and the other two are compared with it in a three-way diff.
Un comando de Subversion que se utiliza para añadir un archivo o un directorio a su copia de trabajo. Los nuevos ítems se añaden al repositorio cuando confirme.
La revisión base actual de un archivo o una carpeta en su copia de trabajo. Esta es la revisión en la que estaba el archivo o la carpeta cuando se hizo la última operación de obtener, actualizar o confirmar. La revisión BASE normalmente no equivale a la revisión HEAD.
Este comando es sólo para archivos de texto, y anota cada línea para mostrar la revisión del repositorio en la que se cambió por última vez, y el autor que hizo ese cambio. Nuestra implementación GUI se llama TortoiseBlame y también le muestra la fecha y hora de la confirmación y ell mensaje de registro cuando mueve el ratón por encima del número de revisión.
Un término de uso frecuente en los sistemas de control de versiones para describir lo que ocurre cuando el desarrollo se parte en un punto en concreto y sigue dos caminos separados. Puede crear una rama desde la línea principal de desarrollo para desarrollar una nueva funcionalidad sin hacer que la línea principal quede inestable. O puede hacer una rama de una versión estable en la que sólo hará correcciones de errores, mientras los nuevos desarrollos tienen lugar en el inestable tronco. En Subversion una rama se implementa como una “copia barata”.
Un comando de Subversion que crea una copia local de trabajo en un directorio vacío al descargar los archivos versionados desde el repositorio.
Citando el libro de Subversion: “Limpia recursivamente la copia de trabajo, eliminando los bloqueos y continuando las operaciones sin terminar. Si alguna vez obtiene un error copia de trabajo bloqueada
, ejecute este comando para eliminar los bloqueos y conseguir que su copia de trabajo vuelva a un estado usable de nuevo.” Tenga en cuenta que en este contexto “bloqueado” se refiere a un bloqueo del sistema de archivos local, no a bloqueos del repositorio.
Este comando de Subversion se utiliza para pasar los cambios desde su copia de trabajo local al repositorio, creando una nueva revisión en el repositorio.
Cuando los cambios desde el repositorio se mezclan con los cambios locales, a veces esos cambios ocurren en las mismas líneas. En este caso Subversion no puede decidir automáticamente qué versión utilizar, y se dice que el archivo está en conflicto. Tiene que editar el archivo manualmente y resolver el conflicto antes que pueda confirmar más cambios.
En un repositorio de Subversion puede crear una copia de un único archivo o un árbol completo. Estos se implementan como “copias baratas” que actúan un poco como un enlace al original en el sentido que casi no ocupan espacio. Haciendo una copia preserva la historia del ítem en la copia, por lo que puede rastrear los cambios que se hicieron antes que ocurriera la copia.
Cuando elimina un ítem versionado (y confirma el cambio), el ítem ya no existirá nunca más en el repositorio después de la revisión confirmada. Pero por supuesto aún existe en las revisiones previas en el repositorio, por lo que aún puede acceder a él. Si es necesario, puede copiar un ítem eliminado y “resucitarlo” por completo con su historia.
Abreviatura de “Mostrar diferencias”. Muy útil cuando desea ver exactamente qué cambios se han hecho.
Este comando produce una copia de una carpeta versionada, igual que una copia de trabajo pero sin los directorios locales .svn
.
Un sistema de archivos propietario de Subversion que se utiliza como soporte de los repositorios. Se puede utilizar en unidades compartidas de red. Se utiliza por defecto para los repositorios creados a partir de la versión 1.2.
Objeto de políticas de grupo.
La última revisión de un archivo o una carpeta en el repositorio.
Comando de Subversion para importar una jerarquía de carpetas completa en el repositorio en una única revisión.
Cuando obtiene un bloqueo de un ítem versionado, lo marca en el repositorio como no confirmable, excepto para la copia de trabajo desde la que se obtuvo el bloqueo.
Muestra la historia de las revisiones de un archivo o carpeta. También se conoce como “Historial”.
Muestra la historia de las revisiones de un archivo o carpeta. También se conoce como “Registro”.
El proceso por el cual los cambios del repositorio se añaden a su copia de trabajo sin interrumpir cualquier cambio que haya realizado ya localmente. A veces estos cambios no se pueden reconciliar automáticamente, y se dice que la copia de trabajo está en conflicto.
Las fusiones ocurren automáticamente cuando actualiza su copia de trabajo. También puede fusionar cambios específicos desde otras ramas utilizando el comando Fusionar de TortoiseSVN.
Si una copia de trabajo tiene cambios únicamente en archivos de texto, es posible utilizar el comando Diff de Subversion para generar un único archivo con el resúmen de esos cambios en el formato de Diff unificado. Un archivo de este tipo a menudo se denomina “Parche”, y puede ser enviado por email a otro (o a una lista de correo) y apllicado en otra copia de trabajo. Alguien sin acceso de confirmación puede hacer cambios y enviar un archivo de parche para que lo aplique un confirmador autorizado. O si no está seguro de un cambio, puede enviar el parche a otros para que lo revisen.
Además de versionar sus directorios y archivos, Subversion le permite añadir metainformación versionada - llamadas “propiedades” para cada uno de sus directorios y archivos versionados. Cada propiedad tiene un nombre y un valor, como un entrada del registro. Subversion tiene algunas propiedades especiales que utiliza internamente, como svn:eol-style. TortoiseSVN tambitsvn:logminsize. Puede a
Si su repositorio se mueve, quizás porque lo ha movido a un directorio diferente en su servidor, o el nombre de dominio del servidor ha cambiado, necesitará “relocalizar” su copia de trabajo para que sus URLs de repositorio apunten al nuevo lugar.
Nota: sólo debería utilizar este comando si su copia de trabajo apunta al mismo lugar en el mismo repositorio, pero es el propio repositorio el que se ha movido. En cualquier otra circunstancia probablemente necesita el comando “Cambiar” en su lugar.
Un repositorio es un lugar central donde se almacenan y mantienen los datos. Un repositorio puede ser un lugar donde se encuentran múltiples bases de datos o archivos para distribuirlos en una red, o un repositorio puede ser un lugar directamente accesible por el usuario sin tener que viajar por una red.
Cuando los archivos en una copia de trabajo se quedan en un estado de conflicto tras una fusión, estos conflictos deben arreglarse por un humano utilizando un editor (o quizás TortoiseMerge). Este proceso se denomina “Resolviendo conflictos”. Cuando finalice, marque los archivos con conflictos como resueltos, y eso le permitirá confirmarlos.
Subversion maniene una copia local “prístina” de cada archivo tal y como estaban cuando actualizó su copia de trabajo por última vez. Si ha hecho cambios y decide que quiere deshacelros, puede utilizar el comando “revertir” para volver a la copia prístina.
Cada vez que confirma un conjunto de cambios, crea una nueva “revisión” en el repositorio. Cada revisión representa el estado del árbol del repositorio en un cierto punto de su historia. Si desea volver en el tiempo para examinar el repositorio tal y como estaba en la revisión N.
En otro sentido, una revisión puede referirse al conjunto de cambios que se hicieron cuando esa revisión se creó.
Al igual que los archivos pueden tener propiedades, las revisiones del repositorio también. Algunas revprops especiales se añaden automáticamente cuando se crea la revisión; son: svn:date svn:author svn:log
que representan la fecha/hora de la confirmación, el confirmador y el mensaje de registro, respectivamente. Estas propiedades pueden editarse, pero no están versionadas, por lo que cualquier cambio es permanente y no puede deshacerse.
Una abreviatura muy usada para Subversion.
El nombre del protocolo personalizado de Subversion que utiliza el servidor de repositorios “svnserve”.
De la misma forma que “Actualizar-a-la-revisión” cambia la ventana temporal de una copia de trabajo para que quede como estuvo en un punto diferente de su historia, “Cambiar” cambia la ventana espacial de una copia de trabajo para que apunte a una parte diferente del repositorio. Es particularmente útil cuando esté trabajando en troncos y ramas en los que sólo hay unos pocos archivos diferentes. Puede cambiar su copia de trabajo entre los dos y sólo se transferirán los archivos cambiados.
Este comando de Subversion incorpora los últimos cambios del repositorio a su copia de trabajo, fusionando cualquier cambio hecho por otros con los cambios locales en la copia de trabajo.
Esta es su “caja de arena” local, el área donde trabaja con los archivos versionados, y normalmente se encuentra en su disco duro local. Puede crear una copia de trabajo al “Obtener” desde un repositorio, y devolver sus cambios al repositorio utilizando “Confirmar”.