Развертывание Mercurial изменений в учетной записи хостинга веб-сайта - PullRequest
0 голосов
/ 22 августа 2011

Я хочу переместить только файлы веб-сайта, измененные с момента опубликованной ревизии, в учетную запись хостинга с использованием SSH или FTP. Учетная запись хостинга основана на Linux, но на ней установлен какой-либо контроль версий, поэтому я не могу просто выполнить обновление там, и решение должно работать на локальных машинах разработки.

По сути, я пытаюсь сделать то, что делает http://www.deployhq.com/, но бесплатно. Я хочу опубликовать изменения без необходимости перезагружать все или вручную выбирать файлы для перемещения. Я открыт для простого использования скрипта bash, который сравнивает версии и копирует каждый файл (как? Не так уж и хорошо с bash), так как мы будем использовать Linux для разработки, но что-то с веб-интерфейсом было бы неплохо.

Заранее спасибо за помощь!

1 Ответ

3 голосов
/ 22 августа 2011

Это больше похоже на работу для rsync , чем на hg, если на этой цели не установлена ​​hg.

Примерно так:

rsync -avz /path/to/local/files/ remote_host:/remote/path/

Это рекурсивно (-r) передаст все файлы из ... / local / files / и поместит их в / remote / path.-Az сжимает и сохраняет атрибуты файла.

rsync заботится только о передаче файлов, которые были изменены.Обязательно следите за косой чертой при указании исходных путей, они имеют значение (см. Ссылку выше).

...