Подтвердить что ты не робот

Использование git по sshfs слишком медленно

Я использую git поверх sshfs (в Mac OS X 10,5, 10.7), но это слишком медленно.

Каждый раз, когда я вошел в систему на удаленном сервере, используйте команду git.

Я пробовал этот пост, http://kerneltrap.org/mailarchive/git/2008/10/23/3768494, однако он не работает.

Кто-нибудь знает хорошие идеи?

4b9b3361

Ответ 1

Вы можете выбрать другую файловую систему. SSHFS - это в основном инструмент удобства. MacOS поддерживает монтирование NFS, например, и это быстро.

Еще один способ - использовать rsync или unison (инструмент "двухсторонний rsync" ). Они действительно выполняют быструю синхронизацию между удаленной и локальной файловой системой. В сочетании с некоторыми быстрыми псевдонимами для компоновки/запуска удаленно, это хороший способ обхода.

Другим способом было бы дистанционное управление средой разработки над VNC/X11. Это делает IDE несколько более вялым, но код не нужно синхронизировать.

Комбинация вышеперечисленного состоит в том, чтобы сделать клон виртуальной машины на удаленном сервере, запустить его в вашем локальном поле и обмениваться папками через виртуальную машину или локальную NFS между ними.

Вы также можете настроить sshfs. Есть несколько вариантов настройки настройки, и вы также можете отключить шифрование. Это дает примерно 2-кратное ускорение в целом, поэтому не ожидайте чудес.

Будучи в той же обуви, что и плакат, я искал решения в течение многих лет, но, не выполнив этого, я несчастливо поселился с тонко настроенными sshfs в сочетании со случайными rsyncs и терпением.

Ответ 2

Я знаю, что это очень старый, но я ежедневно сталкиваюсь с этой проблемой. У меня очень сложная среда, которая была бы практически невозможной/продолжительной для воссоздания локально. У нас есть все, и мы работаем с API-интерфейсами сторонних API cPanel и т.д.

Единственное решение, которое работает для меня, - это монтировать и работать с файлами локально поверх sshfs, но когда это время до git, у меня есть окно терминала, которое просто ssh'd, и это работает для меня. Есть ли причина, по которой вы не можете/не хотите, чтобы терминал был открыт? В противном случае это кажется самым быстрым решением и самым надежным для меня.

Ответ 3

Если я правильно понял, вы напрямую обращаетесь к репозиторию git через sshfs.

Вся суть git распространяется и может быть нажата/вытащить, так почему бы вам просто не клонировать репо на локальные fs? Помните, что клон git работает также из файловой системы, вам не нужно клонировать из репозитория "networked" (ssh, http, git и т.д.).

$ git clone /my_sshfs_mountpoint/repo

и вы готовы качаться. Просто запомните git push назад свою работу, когда закончите.