¿Es posible usar la administración de control de fuente con un server ftp?

He estado trabajando en un proyecto por un time y me ha resultado bastante molesto hacer un seguimiento de todos los cambios que realizo en mi aplicación web. He hecho un poco de búsqueda de Google pero no he encontrado lo que quiero, tal vez no estoy buscando las cosas correctas porque soy nuevo en SCM.

Tengo un server web y me gustaría mantener idealmente la última versión de trabajo actualizada en el server web. Me preguntaba si sería posible ejecutar un software que haga un seguimiento de todos los cambios que realizo y actualice automáticamente la última versión vía FTP a mi server web.

La aplicación está escrita en una mezcla de html / css / javascript (principalmente) y php / mysql para el lado del server.

Saludos, Josh

Sí, esto es posible. Hay muchas herramientas a su disposition para el control de código fuente, construcción y automation de testing. Una palabra key aquí es "Integración continua".

Los frameworks de compilation como TeamCity y Jenkins tienen una variedad de pasos posteriores a la construcción, como la implementación en un server web, como lo hacen muchos IDEs populares. Estas herramientas le permiten escribir scripts o usar asistentes para configurar las reglas sobre lo que debería suceder después de un check-in de código, compilation, etc.

Eche un vistazo a Springloops y otros services similares: básicamente es un repository alojado de subversión (y ahora GIT) en el que puede verificar sus cambios, y puede publicar incremental y automáticamente sus cambios al FTP de su sitio directamente desde el control de código fuente.

No es FTP, pero git es un VCS sólido que puede usar ssh y otros protocolos para enviarlo a su server web.

Personalmente, uso gitolite como punto central para insert mis cambios en un directory de repositorys, y tengo un script rsync independiente que sincroniza los files entre el directory public_html y mi máquina dev.

Por lo tanto, si está trabajando principalmente en * nix, consulte git y rsync y, opcionalmente, gitolite si necesita un control de acceso detallado a la base de código.