У меня есть локальная папка на моем Mac, которую я хочу синхронизировать с сервером WebDAV.
В моей папке много файлов. После редактирования некоторых файлов или добавления / удаления папок я хочу иметь возможность синхронизировать изменения с сервером WebDAV, игнорируя то, что находится на сервере, и всегда использовать мои файлы.
Есть ли какой-нибудь скрипт или инструмент, который я могу использовать для этого из командной строки?
А наращивание ресурса - не выход.
Подключение ресурса - это не полное решение, но оно может быть его частью.
Если вы подключите общий ресурс WevDAV, вы можете использовать robocopy /mir
для зеркалирования содержимого одного каталога в другой. Это должно решить вашу проблему. Robocopy хорошо документирован и поддерживает сценарии.
Изменить: поскольку, по-видимому, вы находитесь на Mac (небольшая деталь, верно?), Вы можете просто заменить robocopy на rsync. Он все равно будет работать.
rsync -a /source user@ssh_host:/path/to/destination
Это сделает это прямо сейчас. rsync также будет передавать только те файлы, которые были изменены. НАСТОЯТЕЛЬНО рекомендуется не использовать rsync (или любой другой метод копирования) для любого активного файла базы данных. Например, для MySQL рекомендуется использовать mysqldump
чтобы заранее экспортировать базу данных в текстовый файл.
Вы, кажется, сильно переоцениваете это и тем самым упускаете из виду некоторые действительно очевидные решения.
Вы говорите, что установка не является решением, а затем продолжаете объяснять, что это потому, что вы думаете, что, монтируя папку webdav, вы будете напрямую работать с удаленными документами. Рассматривали ли вы установку удаленной папки И наличие локальной папки? Затем вы просто выполняете редактирование локально и, когда будете готовы, просто скопируйте содержимое в папку webdav.