2015-03-20 3 views
2

Я пытаюсь посмотреть папку и ее подпапки для любых изменений в файлах (HTML/CSS/JS/Etc). После изменения файла я хочу загрузить его на подключенный диск с удаленного сервера. В настоящее время я использую это в терминале:fswatch + rsync альтернатива или лучше в реализации

fswatch -o ~/Desktop/Site/ | xargs -n1 sh ~/Documents/App\ Syncs/rsync_files.sh 

rsync_files.sh:

rsync -rvzut --info=progress2 --delete-after --delete-excluded --exclude-from=/Users/ME/Documents/App\ Syncs/exclude_list.txt /Users/ME/Desktop/Site/ /Volumes/devroot$/Site; 

Мысль о том, что fswatch будет называть Rsync каждый раз, когда происходит изменение в структуре файла. Он работает, но он ОЧЕНЬ медленный, особенно по дрянной связи.

Мой вопрос: я делаю это правильно или есть лучшее решение для того, что я пытаюсь выполнить? Может ли моя команда rsync лучше оптимизироваться? Есть ли уже приложение, которое сделает для меня все это?

В принципе, я хочу подражать панели файлов в Dreamweaver 2014 без использования Dreamweaver. Моя настройка - Sublime Text 3 и Codekit 2.

ответ

2

Я думаю, это зависит от того, где узкое место, что неясно в вашем вопросе. Одно можно сказать: если соединение «дрянное», я буду беспокоиться о том, чтобы установить соединение, прежде чем пытаться настроить rsync.

Что касается fswatch, то вы уже используете -o, поэтому я не изобретаю дальнейший способ улучшить его работу. Возможно, я бы увеличил значение задержки (-l): команда в вашем вопросе выведет события с максимальной частотой в 1 секунду. Настройте его на более высокое значение: начните с значения в том же порядке величины времени, затраченного на выполнение задания синхронизации.

Что касается rsync, то вы можете найти место для улучшения. Начните задавать себе следующие вопросы (и затем об этом по-английски):

  • rsync лучший вариант?
  • Будет ли целая копия файла (-W) иметь смысл?
  • Имеет смысл сжатие (-z)?
  • Имеет ли место на месте синхронизация (--inplace)?

Если соединение медленно, начинают использовать -z и --inplace и видеть, улучшает ли rsync производительность.

+0

Спасибо за помощь, я поиграю с вариантами, чтобы увидеть, что работает лучше всего. – ksumarine

Смежные вопросы