Mantenga la carpeta FTP sincronizada con la carpeta de Windows


8

Estoy tratando de hacer que mi sistema de integración continua funcione de principio a fin en el entorno de desarrollo.

Desafortunadamente, el último paso después de la publicación es copiar la carpeta a un servidor externo al que solo puedo acceder a través de FTP.

Me gustaría tener un servicio en ejecución que vea una carpeta local y, si cambia, actualiza el servidor FTP con esos cambios.

Parece que no puedo encontrar algo para lograr esto en Windows.


Mientras tanto, vea también "SFTP como una carpeta en Vista" en superuser.com/questions/55860/sftp-as-a-folder-on-vista
Arjan el

Respuestas:



5

Pruebe la versión gratuita de SyncBack . No supervisa las carpetas en tiempo real, pero puede programarlo para que se sincronice a intervalos específicos. Ajústelo a algo bajo como 1 minuto.


Prefiero el monitoreo en tiempo real si puedo encontrarlo. Podría escribirlo, supongo, simplemente tengo mejores cosas que hacer.
CaffGeek

1
He estado buscando un proyecto para volver a la programación por un tiempo. Esto suena como un buen ajuste. He jugado con INotify y JNotify durante el fin de semana y es bastante trivial. Verás un software de sincronización mío en las próximas semanas :)
John T

2

Solución gratuita y de código abierto basada en git:

Use git-ftp para la sincronización. Después de la instalación y configuración de un repositorio git local, puede hacer:

  • git ftp init -u <usuario> -P f tp: //host.example.com/public_html #para presionar por primera vez
  • git ftp push --user <usuario> --passwd <contraseña> f tp: //host.example.com/public_html

Ahora solo necesita observar los cambios en el sistema de archivos, agregarlos a su repositorio git local y empujar su repositorio usando el comando anterior.

Ventajas:

  • git-ftp funciona en windows y linux (probado con mysys git en windows)
  • se integra muy bien en su configuración de desarrollo si ya está usando git
  • muy fácil de configurar y usar (si está familiarizado con git)
  • cambios incrementales -> ahorra mucho ancho de banda

Desventajas

  • necesita encontrar una solución para observar los cambios en el sistema de archivos (no debería ser demasiado difícil de hacer, por ejemplo, nodejs tiene soluciones para esto)

Aquí hay un ejemplo para un archivo por lotes que estoy usando en Windows:

@echo off
git init .
git add . --all
git commit -am "auto commit"
set /p pwd= Please enter ftp password: 
git ftp push --user myftpuser --passwd %pwd% ftp://myftphost.com/myfolder

Tenga en cuenta que este es un ejemplo interactivo, pero podría hacerlo no interactivo almacenando la contraseña en el archivo por lotes.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.