Я использую OS X для разработки и хочу помещать изменения в dev-сервер на каждом every + S.
Когда я проверяю другую ветку, я хочу, чтобы локальная папка обновлялась соответствующим образом.
Поэтому я решил, что мне нужно решение для автоматической двусторонней синхронизации .
Мой редактор на выбор - Sublime Text (это круто, вы обязательно должны это проверить).
Я начал свой квест с плагина Sublime Text SFTP от Will Bond, но нашел его нестабильным и медленным.
Затем я атаковал проблему с Panic Transmit .
Это потрясающе красиво. Однако это мне тоже не помогло.
Transmit предлагает два варианта:
- двусторонняя синхронизация между локальной и удаленной папками;
- смонтировать SFTP в файловую систему.
Увы, его двусторонняя синхронизация выполняется вручную и должна вызываться нажатием кнопки.
(Я мог бы, вероятно, обойти это, написав какой-нибудь умный AppleScript - но я этого не знаю.)
Монтирование SFTP великолепно - к сожалению, у него есть серьезные недостатки: поиск файлов предсказуемо медленен, и, похоже, нет способа сообщить Transmit, что файлы изменились на сервере . Вам нужно размонтировать и снова смонтировать, чтобы увидеть удаленные изменения. Это делает ветки невозможными для работы.
Сейчас я в замешательстве и не хочу тратить пару часов на неправильное решение. Я открыт для предложений по инструменту для улучшения моего рабочего процесса.
Вот что я нашел до сих пор. Я не уверен, что кто-то из них может наблюдать за изменениями в удаленной папке.
- написание некоторого AppleScript для синхронизации Передача в обе стороны каждые десять секунд;
- использование
rsync
и действия с папками ; - используя
rsync
иFSEvent
; - использование DoubleDown (с открытым исходным кодом);
- покупка FolderWatch (коммерческая);
- делать что-то еще.
Обратите внимание, что я ищу решение, которое работает из коробки . Мне не нужен инструмент, который не может обрабатывать новые / измененные / удаленные файлы или папки без возни с его исходным кодом.
Ответы:
Старый вопрос, но вот мой ответ:
Я использую инструмент Unix под названием Unison . Это инструмент командной строки, который позволяет выполнять двустороннюю синхронизацию.
Преимущество в том, что он легко настраивается: игнорировать определенные имена файлов, каталоги, синхронизировать несколько папок, какая сторона выигрывает в конфликте, и многое другое.
Плохо то, что вам не нужно бояться командной строки, а на сервере и клиенте должен быть установлен Unison; Обе установки должны быть одной и той же версии и построены с одинаковой версией OCAML.
Но я использовал его несколько раз в час каждый рабочий день в течение прошлого года, и это было потрясающе - это действительно быстро, очень легко выстрелить из командной строки.
источник
Рассматривали ли вы использовать что-то вроде Git? Размещение файлов на GitHub или настройка собственного git-сервера.
Это должно помочь: /programming/455698/best-visual-client-for-git-on-mac-os-x
источник
Следующий AppleScript позволяет синхронизировать удаленную папку с локальной папкой с помощью Transmit
https://github.com/lmullen/AppleScript---Transmit---sync-local-directory-to-FTP-directory
К сожалению, по умолчанию он синхронизирует удаленную папку с локальной, и я хочу наоборот: загружать обновленные файлы с сервера на мой компьютер.
источник
Очень старый вопрос, но, возможно, поможет мой собственный ответ. Я также использовал SublimeText (я думаю, что он все еще где-то есть), потому что мне нравится, как он так быстро открывает файлы - особенно на старых Mac. Тем не менее, для более серьезной работы, лучше IDE будет лучше соответствовать вашим требованиям.
Так как вы можете приобрести новое / другое программное обеспечение, попробуйте Panic's Coda. Вам уже понравился Transmit, который также является продуктом Panic. Coda находится между SublimeText и такими сложными средами IDE, как, например, Eclipse, и может выполнять практически все, что вы хотите - синхронизировать папки между локальным компьютером и удаленным сервером, публиковать и синхронизировать по требованию и, кроме того, сохранять локальные данные также синхронизируются с GitHub, Google Code или любой другой популярной системой управления версиями, основанной на Git или SVN.
Раньше Coda немного страдала от производительности (а именно от цветопередачи кода при быстрой прокрутке), но текущие версии были полностью обновлены и работают почти так же быстро, как SublimeText. Он также основан на плагинах - плагин проверки PHP / JavaScript / HTML является обязательным, поскольку внутренние функции проверки кода Coda не являются звездными в сравнении. И в наши дни вы можете использовать настройки вашего сервера Transmit в Coda и наоборот, а также на любом устройстве iOS, которым вы можете владеть, через их умные приложения, которые синхронизируют настройки между собой.
Это звучит почти как пропаганда паники ... Я бы не упомянул Coda, если бы ты не упомянул Transmit!
источник