Я часто вношу невеликі зміни у досить великі текстові файли через FTP ( CSS-файли для веб-розробки ), і оскільки мій Інтернет-зв’язок жахливо повільний, це дуже болісний процес.
Навіть якщо я зміню лише один символ файлу, мені все одно доведеться сидіти і чекати значний час, поки весь файл буде повторно завантажений на сервер.
Чи я можу редагувати віддалені файли на своєму локальному комп'ютері, і коли я зберігаю файл, завантажую лише ті частини файлу, які змінилися ?
Редагувати: Я думаю, мені в даний час було незрозуміло, як я використовую FTP-клієнт. В основному я відкриваю віддалений файл через SFTP за допомогою WinSCP. WinSCP зберігає його в папці tmp, запускає Sublime Text і я починаю його редагувати. Коли я натискаю на збереження, WinSCP автоматично завантажує файл. Я ніколи фактично не зберігаю файл постійно на своєму комп’ютері - все робиться через тимчасову папку WinSCP. Ось чому я шукаю рішення, яке можна використати таким чином "натисніть і біжіть".
Попереднє обговорення
Раніше я публікував це запитання на ServerFault, де пропонувалося використовувати щось на зразок git, проте, як я пояснив:
За допомогою git чи подібного інструменту для версії я повинен би взяти на себе зобов'язання кожного разу, коли я зберігаю файл, правда? Навіть якщо це можна зробити автоматично (тобто, якби у мене був макрос, який створив Ctrl-S у збереженому файлі Sublime Text і виконав одночасне натискання git), я можу зробити 50 - 100 крихітних редагувань CSS-файлу на годину; напевно, я б закінчився журналом фіксованого спаму? Також рішення git є негнучким, оскільки покладається на файл, який я редагую, є частиною git repo.
Єдине рішення, про яке я зараз можу придумати, - це якийсь зломний процес з використанням rsync, але навіть тоді це дуже хитро:
- Я завантажую потрібні файли на свій комп’ютер (через FTP / rsync / що завгодно).
- Я відкриваю файл у (наприклад) Sublime Text і починаю редагувати.
- Фоновий процес - це моніторинг папки для модифікації файлів. Коли я зберігаю файл, цей процес миттєво запускає операцію rsync з мого комп'ютера на сервер, передаючи змінені частини файлу.
Однак мені потрібно вручну налаштувати або вказати шляхи до віддалених файлів або каталогів, інакше локальний скрипт rsync не знатиме, куди слід синхронізувати файли, тому цей метод все ще досить негнучкий. Цей метод не дозволить мені миттєво переглядати випадковий файл, відкривати його та зберігати його, як це робить клієнт FTP.
Також немає видимих відгуків, таких як панель прогресу завантаження за допомогою цього методу.