Тримайте папку FTP синхронізованою з папкою Windows


8

Я намагаюся змусити свою систему безперервної інтеграції працювати від початку до кінця в середовищі розробників.

На жаль, останній крок після публікації - це копіювання папки на сторонній сервер, до якого я можу отримати доступ лише через FTP.

Я хотів би мати службу, яка переглядає локальну папку, і якщо вона зміниться, оновить FTP-сервер з цими змінами.

Я не можу знайти щось для досягнення цього в Windows.


Тим часом, дивіться також "SFTP як папку на Vista" за адресою superuser.com/questions/55860/sftp-as-a-folder-on-vista
Арджан

Відповіді:



5

Спробуйте безкоштовну версію SyncBack . Він не здійснює моніторинг папок у режимі реального часу, але ви можете запланувати її синхронізацію через визначені інтервали. Встановіть його на щось низьке, як 1 хвилина.


Я вважаю за краще моніторинг у реальному часі, якщо зможу його знайти. Я можу це написати, гадаю, у мене просто кращі справи.
CaffGeek

1
Я деякий час шукав проект, щоб повернутися до програмування. Це звучить як добре підходить. Я грав у INotify та JNotify у вихідні, і це досить тривіально. У найближчі кілька тижнів від мене ви побачите програмне забезпечення для синхронізації :)
Джон T,

2

Безкоштовне та відкрите рішення на основі git:

Використовуйте git-ftp для синхронізації. Після установки та налаштування локального сховища git ви можете зробити:

  • git ftp init -u <user> -P f tp: //host.example.com/public_html #для першого натискання
  • git ftp push --user <користувач> --passwd <пароль> f tp: //host.example.com/public_html

Тепер вам просто потрібно стежити за змінами файлової системи, додати їх у ваше місцеве сховище git та натиснути ваше сховище за допомогою вищевказаної команди.

Переваги:

  • git-ftp працює у Windows та Linux (тестується з mysys git на windows)
  • чудово інтегрується у налаштування вашої розробки, якщо ви вже використовуєте git
  • дуже простий у налаштуванні та використанні (якщо ви знайомі з git)
  • поступові зміни -> економить велику пропускну здатність

Недоліки:

  • вам потрібно знайти рішення для спостереження за змінами файлової системи (це не повинно бути занадто важким, наприклад, у nodejs є рішення для цього)

Ось приклад пакетного файлу, який я використовую у 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

Зауважте, що це інтерактивний приклад, але ви можете зробити його неінтерактивним, зберігаючи пароль у пакетному файлі.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.