Mostrando entradas con la etiqueta GitHub. Mostrar todas las entradas
Mostrando entradas con la etiqueta GitHub. Mostrar todas las entradas

domingo, mayo 31, 2015

Nueva versión v2.5.11 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.44)


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM (herramienta de control de versiones) para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.5.11 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:

  • Actualizados los scripts para usar la nueva propiedad l_Errors de FoxBin2Prg para conultar errores de sesión.




El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga de GitHub:
https://github.com/fdbozzo/plasticscm-tools-for-visual-foxpro-9


Saludos!

domingo, mayo 10, 2015

Nueva versión v2.5.10 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.43)


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM (herramienta de control de versiones) para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.5.10 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:






El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga de GitHub:
https://github.com/fdbozzo/plasticscm-tools-for-visual-foxpro-9


Saludos!

sábado, abril 18, 2015

Nueva versión v2.5.9 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.42)


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM (herramienta de control de versiones) para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.5.9 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:

  • Actualizada la versión de FoxBin2Prg (solo el EXE) a la versión v1.19.42 
  • Adaptados los scripts vbs y exe a la nueva versión de FoxBin




El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga de GitHub:
https://github.com/fdbozzo/plasticscm-tools-for-visual-foxpro-9


Saludos!

domingo, enero 18, 2015

Nueva versión v2.5.7 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.41)


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM (herramienta de control de versiones) para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.5.7 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:





El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

domingo, enero 11, 2015

Nueva versión v2.5.6 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.40)


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM (herramienta de control de versiones) para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.5.6 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:





El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

jueves, enero 01, 2015

Nueva versión v2.5.5 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.39)


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.5.5 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:

  • Actualizada la versión de FoxBin2Prg (solo el EXE) a la versión v1.19.39
  • Actualizados los scripts vbs para mostrar los errores del proceso a pantalla completa




El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

domingo, diciembre 14, 2014

Nueva versión v2.5.4 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.38)


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.5.4 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:





El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

lunes, diciembre 01, 2014

Nueva versión v2.5.3 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.37)


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.5.3 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:

  • Actualizada la versión de FoxBin2Prg (solo el EXE) a la versión v1.19.37
  • Actualizados los scripts y programas para Plastic para aprovechar las mejoras visuales y funcionales de la nueva versión de FoxBin2Prg




El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

miércoles, octubre 08, 2014

Nueva versión v2.5.2 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.36)


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.5.2 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:





El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

domingo, octubre 05, 2014

Nueva versión v2.5.1 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.35)


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.5.1 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:





El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

lunes, septiembre 22, 2014

Nueva versión v2.5.0 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.34)


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.5.0 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:

  • Actualizado filename-caps a versión v2.2 (programa de capitalización de archivos usado por FoxBin2Prg)
  • Nuevo script PlasticSCM_VFP9_FoxBin2Prg.vbs con mensaje de feedback, para sustituir a la llamada directa que se hacía de FoxBin2Prg que no tiene mensaje de feedback




El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

viernes, agosto 29, 2014

Nueva versión v2.4.28 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.33)

Qué son las Herramientas VFP 9 para Plastic:


Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.


Está liberada la versión v2.4.28 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:




El README.txt explica como se configura en Inglés y Español, y también está explicado en esta nota: Cómo configurar las Herramientas de VFP 9 para Plastic


Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

viernes, agosto 22, 2014

Nueva versión v2.4.26 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.31)

Está liberada la versión v2.4.26 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:

  • Se ha mejorado el control de algunos errores y los mensajes mostrados
  • Se ha agregado el conteo de archivos procesados en la vista de Cambios Pendientes con los script específicos para esta vista



Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.

El README.txt explica como se configura en Inglés y Español.

Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

viernes, agosto 15, 2014

PlasticSCM: Sincronización con GitHub

Por: Fernando D. Bozzo

En esta nota vamos a ver cómo se vincula y sincroniza un repositorio Plastic con GitHub.

Nota: Plastic tiene sus propios repositorios, y no necesita conectarse a repositorios externos como GitHub o BitBucket para funcionar. Esto solo se hace cuando específicamente se quiere trabajar con esos repositorios.


Un aviso importante:


   Una vez hecha la sincronización con GitHub ya no hay marcha atrás, y lo que se suba quedará subido y no se podrá borrar localmente. Aunque se intente borrar localmente (por ejemplo un changeset) en la siguiente sincronización se volverá a descargar todo y volverá a aparecer, y si no se controla bien los archivos que suben, sus conversiones a texto, su capitalización y el tipo de archivo (que no sea basura), puede perjudicar la sincronización con GitHub, lo que en la práctica puede significar tener que volver a hacer todo desde cero (crear otro repositorio Plastic, otro repositorio GitHub, etc), por eso insisto tanto en tomar las precauciones necesarias para no tener que perder tanto tiempo luego en reconfiguraciones.

Una vez aclarado el tema, ahora sí, el proceso de sincronización.


Pasos a seguir para sincronizar con un repositorio GitHub


1) Seleccionar el alias del workspace que se quiere sincronizar desde la solapa superior, justo bajo el título de la ventana (ejemplo: dvcs_vfp9). Como el workspace está vinculado a un directorio y al Repositorio (de hecho es un alias para una vista del repositorio), Plastic sabe de donde tomar la información y donde actualizar. También puede observarse que justo bajo la solapa del workspace está la información del mismo, en el formato:

Rama @ Repositorio @ servidor : puerto  y Workspace path (directorio del workspace)




2) Ahora vamos vincular nuestro repositorio con GitHub. Hacemos click-derecho en la rama /main sobre la parte gris que está fuera del punto azul (es poco margen al principio, pero se puede seleccionar y se quedará coloreada de azul claro, bajo los puntos circulares), se abrirá el menú contextual y en el título del panel derecho deben ver que dice "Nombre de la rama" (si dice "numero de changeset" eligieron mal), en este menú eligen "Replicación / Sincronizar con Git":



3) Aquí ponen la URL del repositorio de GitHub ( ejemplo: https://github.com/fdbozzo/dvcs_vfp9.git ) y el usuario y contraseña que usaron para darse de alta en GitHub, y pulsan "Sincronizar" (no se preocupen del nombre que figura en la captura, que es solo ilustrativo):



4) Si todo salió bien, deberían ver esto:



Si lo anterior sale en rojo, es que algo salió mal (por ejemplo, siguiente imagen) y se debe analizar el mensaje de error dado. En este caso, el error se debió a un bug de Plastic que reporté en febrero y que solucionaron:




5) Una vez que cierren esta pantalla, ya está hecha la sincronización y guardadas las credenciales para las próximas sincronizaciones.En el Explorador de ramas, si actualizan con F5 o con el icono de la flecha circular (a la derecha de ACCIONES PRINCIPALES), deberían poder ver dos o más puntos azules, al menos más puntos de los que veían antes de sincronizar. Esta vista es un gráfico de changesets (cambios) en el tiempo, donde pueden ver la fecha (arriba), y hacia la derecha siempre está lo más nuevo.



Nota importante:
Las ramas nuevas no hacerlas nunca del primer nodo de /main (el de más a la izquierda), debe hacerse de los posteriores y normalmente se hace desde el último changeset de la derecha, ya que si no les quedarán ramas fantasma que no podrá ver nadie mas.



Solución a algunos problemas sincronizando con GitHub u otro repositorio externo no-Plastic


Cuando se trabaja con repositorios externos como GitHub, BitBucket u otros, a veces las cosas pueden no salir como esperamos.

Si el problema es de conexión, o sea que da un error nada más intentar sincronizar, lo primero que se debe verificar son los datos de conexión al repositorio externo, como la URL, el usuario y la contraseña, que a veces poner mal un carácter impide la conexión.

Si se detecta que lo que uno de los usuarios ve no se corresponde con lo que debería ver, una solución podría ser que el usuario se cree un nuevo repositorio local, en un nuevo workspace y un nuevo directorio, vuelva a configurar la conexión al repositorio externo y sincronice. De esta forma se le bajará todo nuevamente, y si el repositorio local anterior tenía algún problema, entonces ese problema desaparece.

Normalmente esto lleva unos minutos, dependiendo del tamaño del repositorio externo.




Hasta la próxima!



domingo, agosto 10, 2014

Nueva versión v2.4.24 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.30)

Está liberada la versión v2.4.24 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:




Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.

El README.txt explica como se configura en Inglés y Español.

Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

sábado, agosto 02, 2014

Nueva versión v2.4.23 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.29)

Está liberada la versión v2.4.23 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:

  • Actualizada la versión de FoxBin2Prg (solo el EXE) a la versión v1.19.29
  • Bug Fix del agregado del control y reporte de algunos errores que puedan ocurrir durante la conversión, para ser mostrados en los mensajes de estado de procesamiento.



Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.

El README.txt explica como se configura en Inglés y Español.

Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

sábado, julio 26, 2014

Nueva versión v2.4.22 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.28)

Está liberada la versión v2.4.22 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:

  • Actualizada la versión de FoxBin2Prg (solo el EXE) a la versión v1.19.28
  • Se ha agregado control y reporte de algunos errores que puedan ocurrir durante la conversión, para ser mostrados en los mensajes de estado de procesamiento.



Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.

El README.txt explica como se configura en Inglés y Español.

Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

viernes, julio 18, 2014

Nueva versión v2.4.21 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.27)

Está liberada la versión v2.4.21 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:




Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.

El README.txt explica como se configura en Inglés y Español.

Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!

domingo, julio 06, 2014

PlasticSCM: Opciones de conectividad, transporte del código fuente y backup

Por: Fernando D. Bozzo

Una de las cosas que más me gustan de este SCM (Source Control Manager o Administrador de Código Fuente) es la cantidad de opciones que tiene para conectarse y sincronizarse con otros servidores Plastic y con otros servicios como GitHub, BitBucket y otros.

Este artículo está dedicado a quienes necesitan sincronizar sus repositorios con otras personas o con otros servicios, trabajen en solitario o en grupo. Lo importante es conocer las opciones disponibles para luego elegir.

Quienes vienen trabajando con herramientas de control de código, ya saben que una vez que se comienza a trabajar así, no se puede ni se quiere vivir sin él, y quienes estén comenzando a conocerlo, estarán pudiendo comprobar, al menos, algunas ventajas que aporta, como poder ver y analizar el historial, deshacer o rehacer cambios, hacer un Diff o un Merge (....a qué ahora sí les suena esto :), preparar versiones del sistema, también llamadas Releases, preparar parches, trabajar simultáneamente en más de una versión del mismo componente, etc.

Dicho esto, una de las cosas que nos aportará valor y comodidad es poder disponer del control de código donde sea que estemos trabajando, tanto trabajando en solitario como trabajando en grupo y compartiendo un proyecto, y por eso vamos a ver varias situaciones y alternativas de trabajo disponibles.


Supongamos que disponemos de un PC de escritorio en casa, o de un servidor en la oficina, donde está instalado el componente servidor de Plastic con los repositorios definitivos, y donde realmente se centralizará todo el control del código fuente. Es necesario mantenerlo siempre actualizado, por lo que las vías para hacerlo son:

  • Trabajar directamente en ese PC o en el servidor
  • Trabajar en una red local con acceso a ese PC o servidor
  • Trabajar desde Internet con acceso a ese PC o servidor
  • Trabajar en una ubicación desconectada y sin Plastic, hacer una copia de lo trabajado en zip y sincronizarlo más tarde en el servidor Plastic 
  • Trabajar en una ubicación sin Plastic, pero con acceso a DropBox, Google Drive u otro servicio de guardado en la nube, para más tarde sincronizarlo en el servidor de Plastic

De ahora en más, hablar de una PC de sobremesa, hablar de una Portátil o hablar de un Servidor de Oficina o Empresa, en todos los casos con el componente servidor de Plastic, los consideraré a todos como "el servidor Plastic", ya que es la función que están realizando, desde el momento en que permiten guardar el código fuente en una Base de Datos local.

Es importante entender esto, porque todo lo posterior tratará sobre formas de sincronizar los repositorios entre servidores Plastic, que perfectamente podrían sincronizarse entre una PC de sobremesa y una Portátil, o entre una Portátil y un Servidor de Oficina/Empresa, o entre dos (o más) Portátiles, o usando un repositorio externo como GitHub, BitBucket, etc, o cualquier otra combinación que se les ocurra donde intervengan dos o más servidores Plastic.

Finalmente, y para despejar cualquier duda, "sincronizar" es la acción de actualizar repositorios en ambos sentidos, o sea que se suben los cambios (archivos y directorios nuevos, modificados o eliminados) que el repositorio destino no tiene y se bajan los cambios que nuestro repositorio local no tiene, quedando el historial en ambos casos igualado.


¿Pero sincronizando no se pisarán mis cambios con los de los demás?


Puede ocurrir, si no se trabaja de forma organizada. Para evitar estos problemas fácilmente, la forma de trabajar debe ser tener una rama por desarrollador como mínimo, y a su vez otra rama por tarea, pero fundamentalmente debe haber un proyecto inicial, con su pjx, los archivos de configuración de Plastic y con toda la estructura de directorios en el repositorio, para evitar diferencias innecesarias en nombre de directorio o capitalización, y demás.


Opciones de sincronización entre repositorios


Estas son algunas de las opciones disponibles:
  • Sincronizar un repositorio Plastic local con otro repositorio Plastic remoto. Esta es la opción ideal y la más eficiente. Requiere una conexión de red o por Internet entre ambos servidores Plastic, y que no esté bloqueado el puerto 8087 (u 8088 si se usa seguridad SSL). Ojo, Plastic no soporta Firewalls donde deba autenticarse. En esos casos se deberá usar redirección de puertos.
  • Sincronizar un repositorio Plastic local con otro repositorio remoto como GitHub, BitBucket o cualquier otro soportado. Esta opción implica usar un servicio "intermediario", y si el repositorio no es público, probablemente implique algún costo extra asociado, ya que al menos GitHub, si se quiere usar un repositorio privado, se debe pagar, y supongo que con el resto será lo mismo.
  • Trabajar con cliente Plastic local y servidor Plastic en red o por Internet. Realmente aquí no hay sincronización. Esta opción se suele usar en las empresas que tienen uno a varios equipos de desarrollo internos o externos, pero donde el código fuente se quiere que solamente esté en el servidor corporativo por ser un bien intelectual de la empresa. La única desventaja de este modelo es que si la red no es veloz se pueden producir picos de congestión si los equipos de desarrollo son numerosos o si se usa para procesos de Integración Continua (CI). Requiere una conexión de red o por Internet entre ambos servidores Plastic, y que no esté bloqueado el puerto 8087 (u 8088 si se usa seguridad SSL) y en este escenario ayuda mucho utilizar balanceo de servidores o Servidores Proxy Plastic (esto está mejor explicado en su web)



Supongamos que tenemos un portátil nuestro que usamos para programar, en el que podemos instalar lo que sea necesario, y que llevamos de aquí hacia allá todo el tiempo, sea a lo del cliente, a casa o a un bar. Tenemos un Servidor Plastic instalado en el portátil, y nuestros repositorios, cada uno con su proyecto. Aquí trabajamos normalmente y sin mayor problema, ya que tanto el código como el SCM están en el mismo equipo, por lo que hacemos checkin, merge, ramas y lo que haga falta.

Si tuviéramos que sincronizarnos con un compañero que trabaja en otra ubicación y donde no compartimos una red local, podríamos usar estas opciones:
  • Sincronización Plastic local a Plastic remoto. En este caso los dos nos ponemos de acuerdo en un horario para conectarnos a Internet y la sincronización sería directa de equipo a equipo usando el puerto 8088 SSL (u otro), y para resolver el problema de la IP dinámica se puede usar algún servicio como NoIP, DynDns o similar. El único problema con esto sería ponerse de acuerdo en ese horario, y que, a día de hoy, la versión 5 de Plastic no soporta la conexión a través de Firewalls que requieran autenticación, pero si al Firewall se le configura redirección de puertos, muy probablemente se pueda.
  • Sincronización Plastic local a servidor remoto (GitHub, etc). Este es el caso comentado en Opciones de Sincronización, donde se usa un repositorio intermediario.
  • Sincronización mediante archivos zip por DropBox. GDrive o similar. Esto realmente no es una sincronización, pero al menos permite incorporar los cambios de otra persona al repositorio local. La idea es crear dos ramas, la nuestra y la de nuestro compañero. Nosotros trabajamos en nuestra rama normalmente hasta que nuestro compañero nos envía un zip mediante DropBox, Google Drive o similar. Nos pasamos temporalmente a la rama de nuestro compañero, descomprimimos el zip en el workspace y hacemos el checkin. Ya está en control de código y podemos hacer un merge de su rama a la de integración. Este mecanismo es un poco Espartano porque nos implica estar haciendo un merge de lo nuestro y un merge de lo del otro, y al otro le implica lo mismo, con lo que se duplica el trabajo de integración y la posibilidad de errores, pero al menos nos puede sacar del paso.
  • Sincronización Plastic local a Plastic local. Si, suena raro, pero se pueden crear 2 o más repositorios Plastic locales usando distintos workspaces y distintos nombres de repositorio, para luego, mediante un perfil de conexión (comentado más abajo), sincronizarlos. No sé si tenga alguna utilidad, ya que yo lo usé solo para probar y simular 2 usuarios distintos que sincronizaban sus repositorios (que se pueden modificar por separado), pero es bueno conocer las opciones disponibles.

  • Fast-Export/Fast-Import: Finalmente hay una opción que merece ser conocida, que es la opción Fast-Export y Fast-Import, basada en el formato abierto de Git, que permite exportar un repositorio completo a un archivo en este formato de Git, y también permite importarlo. Esto permite una capa más de compatibilidad, no solo con Git, sino con otros SCM que admitan ese formato.


Dentro de la sección de configuración de Plastic, hay un apartado llamado Perfiles, donde se pueden configurar perfiles de conexión con distintos esquemas de autenticación (usuario/password, LDAP, Directorio Activo, etc).

Este apartado merece ser conocido, porque realmente admite muchas opciones de conectividad.




Como se podrá comprobar en la Instalación, los puertos son configurables, y esta configuración se puede cambiar en cualquier momento

Hay mucha documentación disponible en la web de Plastic, aunque lamentablemente está solo en Inglés. Este es un link al apartado donde explican todo sobre entornos distribuidos.


Hasta la próxima!


Artículos relacionados:
PlasticSCM: Cómo configurar la replicación de repositorios Plastic locales y remotos



Nueva versión v2.4.20 de las herramientas Visual FoxPro 9 para PlasticSCM (Incluye FoxBin2Prg.exe v1.19.26)

Por: Fernando D. Bozzo

Está liberada la versión v2.4.20 de las herramientas Visual FoxPro 9 para PlasticSCM, con los siguientes cambios:




Estas herramientas son un grupo de scripts vbs y programas Visual FoxPro 9 que se configuran dentro de PlasticSCM para poder invocar a FoxBin2Prg (incluye solo el EXE) desde dentro de la interfaz de Plastic.

El README.txt explica como se configura en Inglés y Español.

Nota: Los fuentes del proyecto FoxBin2Prg y el historial de ambios, están en CodePlex, en este link.


Como actualizar las existentes:
Con descargarlas y reemplazar los archivos en el sitio que los hayan puesto antes es suficiente.


Link de descarga:
https://github.com/fdbozzo/foxpro_plastic_diff_merge


Saludos!