Ayuda de MetaEditorProyectos y MQL5 StorageCombinar versiones

Combinar cambios

Cuando trabajamos de forma conjunta en un proyecto grupal, es posible que varios usuarios editen los mismos archivos en paralelo. Para no perder tales cambios al sobrescribirse entre sí, el MetaEditor tiene una función de combinación incorporada.

Si intenta guardar un archivo que ya ha sido modificado por alguien en el repositorio, el MetaEditor le pedirá que primero obtenga los últimos cambios. Tras recibir los cambios, se intentarán combinar los datos: los cambios del repositorio se aplicarán a una copia local de los datos, intentando conservar los cambios locales actuales.

  • La combinación funciona solo para archivos de texto con código fuente (mq4, mq5, mqh, cpp, h) en formato ANSI. Los archivos bmp y wav siempre son totalmente reemplazados con la versión de la revisión anterior.
  • Los archivos de código fuente se comparan línea por línea. Cuando se producen conflictos (por ejemplo, en el archivo local y en el archivo correspondiente en el repositorio se cambia la misma línea), el algoritmo de combinación trata de conservar al máximo los cambios locales.

Ejemplo de combinación

Vamos a considerar uno de los casos típicos de combinación de dos archivos. Como se ha mencionado anteriormente, al combinarse, los archivos del código fuente se comparan línea por línea. Si el archivo en el repositorio contiene líneas que no están presentes en el archivo local, entonces se agregan los datos de la línea. Vamos a analizar el siguiente ejemplo de combinación de dos archivos:

Ejemplo de combinación de dos archivos

Después de ejecutar el comando "Obtener actualizaciones del repositorio Obtener actualizaciones del repositorio", el archivo local se queda sin cambios, puesto que los cambios locales tienen prioridad. Sin embargo, si el archivo en el repositorio contuviera una nueva línea "x = 0;", se agregaría, y la línea "return (true);" permanecería sin cambios:

Ejemplo de combinación de dos archivos

  • La prioridad de los datos locales constituye el principio básico de la combinación de archivos. El algoritmo tiende a maximizar la preservación de los cambios locales.
  • Existen muchos tipos de conflictos de combinación de datos. En esta sección, analizaremos solo una de las situaciones más simples. El algoritmo de combinación es complejo y realiza un enfoque complejo sobre el análisis de archivos. Podrá encontrar más información sobre la combinación en el libro dedicado a Subversion.