Ayuda de MetaEditorProyectos y MQL5 StorageTrabajar con el repositorio

Trabajar con el repositorio

El repositorio MQL5 Storage funciona solo con la carpeta MQL5 (o MQL4) de la plataforma comercial, así como con el catálogo especial de proyectos compartidos, diseñado para proyectos grupales.

Todas las operaciones con el repositorio MQL5 Storage se realizan a través del menú contextual de la ventana "Navegador" y a través del menú contextual Editor de código fuente:

Menú de MQL5 Storage

Los comandos del menú le permitirán realizar las siguientes acciones en MQL5 Storage:

  • Obtener datos del repositorio;
  • Enviar cambios al repositorio;
  • Añadir archivos/carpetas al repositorio;
  • Eliminar archivos/carpetas del repositorio;
  • Cancelar los cambios actuales en la copia local de los datos;
  • Ver el registro de cambios de los datos en el repositorio;
  • Ver los cambios en la copia de trabajo del archivo.

Inicio de trabajo #

El repositorio contiene información en forma de un árbol de archivos. Cuando se conecta al repositorio, el usuario del MetaEditor puede leer y escribir estos archivos. El usuario trabaja siempre solo con una copia local de los datos y, según sea necesario, envía sus cambios al repositorio.

Para comenzar a trabajar con datos a través de MQL5 Storage, vincule la carpeta de datos local a una carpeta análoga a la misma en el repositorio:

  • Si acaba de crear un repositorio, este se encontrará vacío Necesitará añadir a este un catálogo. Después de eso, se creará el catálogo correspondiente para el directorio especificado en el repositorio, (por la misma ruta a /MQL4 o /MQL5). Este catálogo será el directorio raíz. Precisamente dentro de él tendrá lugar el posterior trabajo con los archivos.
  • Si el repositorio ya contiene datos, extráigalos al catálogo local. Para hacer esto, ejecute el comando "Obtener actualizaciones del repositorio Obtener actualizaciones del repositorio" en el menú contextual del elemento raíz "MQL5" (o "MQL4") en la ventana "Navegador".

Almacenamiento de versiones de los datos

El catálogo/archivo vinculado con el repositorio se denomina "versionado", es decir, representa una cierta versión: el número de revisión. Cada actualización de datos en el repositorio se corresponde con un número de revisión específico. Cada vez que usted actualice un catálogo/archivo en el repositorio, el número de revisión se incrementará para el mismo, así como para todo el directorio raíz. En esencia, la revisión es un estado del catálogo/archivo en un momento determinado.

Los catálogos raíz se consideran la carpeta MQL5/MQL4, así como las carpetas de cada proyecto grupal. Para cada catálogo raíz las revisiones se llevan a cabo por separado, incluida su propia numeración. Si usted envía cambios al catálogo MQL5, su número de revisión aumentará; mientras que en los proyectos, el número de revisión no aumentará (a menos que los proyectos usen archivos compartidos del directorio MQL5).

Esquema general de trabajo:

  • Si acaba de agregar un archivo al repositorio, o al contrario, si lo ha eliminado del repositorio de la computadora local, su versión (número de revisión) en la computadora y en el repositorio coincidirá.
  • Inicialmente, la versión (número de revisión) del archivo local (copia de trabajo) y del archivo correspondiente en el repositorio son iguales. Esto es así si acaba de agregar un archivo o, por el contrario, lo ha extraído del repositorio.
  • Si cambia el archivo y envía los cambios al repositorio, el número de revisión aumentará tanto localmente como en el repositorio.
  • Al enviar los cambios, podría ocurrir que el archivo ya haya sido modificado por alguien y que el número de revisión en el repositorio sea mayor que el local. En este caso, antes de enviar sus propios cambios al repositorio, primero deberá obtener los últimos cambios del repositorio. Si es posible, MQL5 Storage combinará los cambios del repositorio con sus cambios. En este caso, el número de revisión del archivo local se elevará hasta el número de revisión del archivo en el repositorio.

Cada transacción de los cambios se fija en el registro del repositorio, por lo que, posteriormente, el usuario podrá ver qué archivos se han modificado, cuándo han tenido lugar los cambios y quién los ha realizado. Además, el usuario podrá actualizar hasta la revisión seleccionada una copia local de los datos y retroceder a cualquier revisión.

Agregar al repositorio #

Para agregar una carpeta o archivo al repositorio, selecciónela y ejecute el comando "Agregar al repositorio Agregar al repositorio". Después de eso, aparecerá un cuadro de diálogo que muestra la lista de carpetas y archivos que se agregarán.

  • La adición de archivos se realiza solo de forma local. Para enviar los datos de cambio al repositorio, ejecute el comando "Enviar cambios al repositorio Enviar cambios al repositorio".
  • El repositorio de MQL5 Storage solo funciona con archivos de los siguientes tipos: mq4, mq5, mqh, cpp, h, bmp, wav, ex4, ex5, tpl, set. Los restantes tipos de archivos no se pueden agregar al repositorio.
  • No podrá agregar al repositorio archivos de más de 64 MB.

Agregar una carpeta al repositorio

Marque con ticks los archivos y carpetas necesarios, luego haga clic en "OK".

  • El principio de funcionamiento del repositorio no permite agregar archivos sin la carpeta en la que se ubican. No podrá agregar un archivo que se encuentre en una carpeta que no se haya agregado al repositorio.
  • No podrá agregar archivos individuales al directorio raíz /MQL4 o /MQL5.
  • Podrá agregar a una carpeta asociada al repositorio solo sus subcatálogos directos. Las carpetas que se encuentren más abajo en la jerarquía no se podrán agregar sin sus carpetas principales.

Los archivos y carpetas agregados están marcados con un icono Agregado al repositorio:

Archivos y carpetas agregados

El siguiente paso es enviar estos cambios al repositorio. Seleccione la carpeta/archivo agregado y ejecute el comando "Enviar cambios al repositorio Enviar cambios al repositorio".

Enviar cambios al repositorio

En este cuadro de diálogo, también podrá elegir qué archivos y carpetas enviar al repositorio. Podrá comentar la transacción de los cambios. Los comentarios detallados facilitan el análisis de los cambios en el futuro.

Después de enviar los cambios actuales al repositorio, las carpetas y archivos correspondientes se marcarán con un icono Sin cambios. Esto significa que la copia local de los datos no es diferente de la que estaba en el repositorio en el momento del último envío/recepción de cambios.

  • Si la carpeta es análoga a la que ya se ubica en el repositorio, verá un error así "Folder already exists, update it from storage". En este caso, deberá ejecutar para esta carpeta el comando "Obtener actualizaciones del repositorio Obtener actualizaciones del repositorio". Tras dicho paso, se encontrará vinculada al repositorio y se agregarán a ella los datos del mismo. A continuación, podrá enviar sus propios cambios al repositorio con el comando "Enviar cambios al repositorio Enviar cambios al repositorio".
  • Si el tamaño del archivo supera 1 MB, en el cuadro de diálogo de envío de cambios al repositorio, dicho archivo dejará de estar seleccionado. Deberá tener cuidado al descargar archivos de gran tamaño, para evitar sobrecargar el sistema de almacenamiento.

Extraer los datos y obtener actualizaciones del repositorio #

La extracción primaria de datos ocurre al activar el repositorio en el MetaEditor. Después de ejecutar el comando "Activar MQL5 Storage Activar MQL5 Storage", el MetaEditor comprobará si existen nuevos datos en el repositorio.

  • Si hay datos en el repositorio del catálogo MQL5 (MQL4), también se descargarán a la computadora.
  • Si hay proyectos grupales disponibles en el repositorio, se mostrarán en la sección "Shared Projects". Para descargar los archivos del proyecto a la computadora local, haga clic en "Obtener actualizaciones del repositorio Obtener actualizaciones del repositorio" en el menú contextual.

Para continuar recibiendo actualizaciones del repositorio, use el comando "Obtener actualizaciones del repositorio Obtener actualizaciones del repositorio" en el menú contextual de las carpetas y archivos en la ventana "Navegador".

Si hay carpetas en el repositorio que aún no están en su copia de trabajo de los datos, ejecute el comando "Obtener actualizaciones del repositorio" en el elemento raíz "MQL5" (o "MQL4") en la ventana "Navegador". Todos los datos del repositorio se cargarán en las carpetas locales correspondientes. Todos los datos tendrán la misma revisión que los datos en el repositorio.

Actualizar los datos

Si la carpeta local contiene datos, despues de la extracción se complementarán con los datos recibidos del repositorio. Los nuevos archivos serán agregados. Para los archivos con nombres y rutas coincidentes, el repositorio intentará Combinar los datos.

Actualizar a una revisión #

MQL5 Storage guarda el historial completo de los cambios enviados por el usuario al repositorio. Cada transacción de los cambios constituye una nueva revisión (estado del repositorio en un cierto punto en el tiempo). Si varios usuarios trabajan en paralelo con los datos a través del repositorio, usted deberá obtener periódicamente los cambios realizados por otros usuarios. El comando "Actualizar a una revisión Actualizar a una revisión" permite actualizar por etapas la copia local actual de datos desde el repositorio.

Por ejemplo, desde la última actualización de la copia local de los datos, tres nuevas revisiones han aparecido en el repositorio. En primer lugar, podrá actualizar a la primera, luego a la segunda y finalmente a la tercera.

Para actualizar a una revisión específica, seleccione un archivo o carpeta y llame al registro del repositorio con el comando del menú contextual "Mostrar registro de cambios Mostrar registro de cambios".

Actualizar a una revisión

En la ventana que se abrirá, elija la revisión necesaria y ejecute el comando "Actualizar a una revisión Actualizar a una revisión".

  • La copia local de los datos solo se puede actualizar hasta la revisión más alta (tardía).
  • La copia local de los datos se complementa con los datos recibidos del repositorio. Para los archivos con nombres y rutas coincidentes, el repositorio intentará Combinar los datos. Si se han agregado archivos a la revisión, estos se añadirán a la copia local. Si los archivos han sido eliminados de la revisión, también serán eliminados de la copia local.

Retroceder a la revisión #

MQL5 Storage guarda el historial completo de los cambios enviados por el usuario al repositorio. Cada transacción de los cambios constituye una nueva revisión (estado del repositorio en un cierto punto en el tiempo). En cualquier momento, el usuario podrá regresar a uno de los estados previos del archivo o carpeta.

Para retroceder a una revisión específica, seleccione un archivo o carpeta y llame al registro del repositorio con el comando del menú contextual "Mostrar registro de cambios Mostrar registro de cambios".

Retroceder a la revisión

En la ventana que se abrirá, seleccione la revisión requerida y haga clic en "Retroceder a la revisión Retroceder a la revisión".

Después de retroceder a la revisión, el archivo/carpeta seleccionado será devuelto por entero al estado especificado. La reversión es posible tanto para revisiones anteriores como posteriores.

Fijar los cambios en el repositorio #

Como se ha mencionado anteriormente, todo el trabajo con los datos se lleva a cabo en su copia local. Para trasladar los cambios locales al repositorio, utilice el comando "Enviar cambios al repositorio Enviar cambios al repositorio". Los archivos y las carpetas donde se realizan los cambios con respecto a la copia almacenada en el repositorio están marcados con un icono Modificado.

Antes de fijar los cambios, podrá verlos, seleccionando un archivo y ejecutando el comando "Cambios Comparar revisiones" en el menú contextual.

Enviar cambios al repositorio

En el cuadro de diálogo de confirmación, podrá especificar los cambios de qué archivos y carpetas enviar al repositorio. Podrá comentar la transacción de los cambios. Los comentarios detallados facilitan el análisis de los cambios en el futuro.

  • Los cambios locales tienen una prioridad más alta, estos se añaden en cualquier caso al repositorio.
  • Si el número de revisión de los datos en el repositorio es más alto que el número de revisión local (se han introducido cambios desde otra fuente y los datos locales no se han actualizado desde el repositorio), recibirá un error del tipo "Out of date" cuando intente realizar cambios. En este caso, ejecute primero el comando "Obtener actualizaciones del repositorio Obtener actualizaciones del repositorio" para combinar los datos, y a continuación "Enviar cambios al repositorio Enviar cambios al repositorio".
  • Tenga cuidado al actualizar los archivos bmp y wav. Al combinarse, estos archivos son reemplazados por completo con la versión de la revisión anterior. De esta forma, al actualizarse, pueden ser sustituidos con los archivos del repositorio. Para evitar tales situaciones, guarde copias de estos archivos por separado, ejecute el comando "Obtener actualizaciones del repositorioObtener actualizaciones del repositorio" para aumentar el número de la revisión local, trasladar los archivos copiados anteriormente y confirmar los cambios en el repositorio.

Eliminación #

Si desea eliminar un archivo o carpeta, ejecute el comando "Eliminar del repositorio Eliminar del repositorio". En este caso, además, el archivo/carpeta será eliminado de la copia local de los datos. Para eliminar datos del repositorio, envíe estos cambios con el comando "Enviar cambios al repositorio Enviar cambios al repositorio".

  • El hecho de eliminar un archivo o carpeta con el comando estándar "Eliminar Eliminar" de la ventana "Navegador" no afecta al repositorio MQL5 Storage. En la siguiente actualización desde el repositorio, los datos eliminados serán restaurados.
  • No se puede borrar un catálogo raíz vinculado al repositorio.

Revertir cambios #

Si desea deshacer los cambios realizados en la copia local actual de los datos, ejecute el comando "Cancelar los cambios de esta revisión Cancelar los cambios de esta revisión" para el archivo o carpeta necesario. Después, el archivo/carpeta se devolverá al estado en el que se guardó localmente durante la sincronización de datos previa con el repositorio.

Al deshacer los cambios, se restaurará la revisión local original y no la revisión actual en el repositorio.

Registro de cambios #

Cada fijación de cambios en el repositorio con el comando "Enviar cambios al repositorio Enviar cambios al repositorio" se escribe en el registro. Esto facilita el análisis del historial de cambios en el proyecto. Para ver el registro de cambios de un archivo/carpeta, ejecute para él el comando "Diario Mostrar registro de cambios".

Ver el registro

En la parte superior se muestra la lista de cambios:

  • Revisión – número único de fijación de cambios;
  • Autor – nombre del usuario (coincide con el login de la cuenta en MQL5.community), que hizo estos cambios;
  • Fecha – fecha de fijación de los cambios en el formato UTC;
  • Comentarios – comentar los cambios.

Usando el comando del menú contextual "Actualizar a una revisión Actualizar a una revisión" podrá actualizar la copia local de los datos hasta la revisión elegida.

En la parte inferior de la ventana se muestra la lista de archivos modificados en la revisión seleccionada. Usando los iconos, se muestran los siguientes cambios:

  • Añadido – archivo añdido;
  • Modificado – archivo modificado;
  • Eliminado – archivo eliminado.

Usando el menú contextual de la lista de archivos modificados, podrá analizar los cambios:

  • Comparar con la copia de trabajo Comparar con la copia actual – compare el archivo seleccionado con la copia de trabajo de este archivo
  • Comparar con la revisión anterior Comparar con la revisión anterior – compare el archivo seleccionado con la revisión previa.
  • Comparar revisiones Comparar revisiones – comparar dos revisiones de archivos, preseleccionándolos en la parte superior de la ventana.