Estoy tratando de usar Sublime Text 2 como editor cuando ingreso SSH a mi servidor de trabajo, y estoy perplejo. Encontré este http://urbangiraffe.com/2011/08/13/remote-editing-with-sublime-text-2/ (entre muchas otras publicaciones) que parece que podría ayudar, pero no lo sigo exactamente , en particular con los valores que debo poner para la variable remota en la línea 5. Configuré "/ Users / path / to / local / copy" en mi directorio raíz local, pero no sé si eso es correcto o si hay más que hacer. ¿Alguna idea? Estoy en OSX10.8
ssh
sublimetext2
chincheta
fuente
fuente
osxfuse
ysshfs
en mi Mac montar localmente directorios remotos y luego editarlos a través de ST2.Respuestas:
Hay tres formas:
Use el plugin SFTP (comercial) http://wbond.net/sublime_packages/sftp : lo recomiendo personalmente, ya que después de configurar las claves SSH públicas con frase de contraseña, es seguro, fácil y vale cada centavo http://opensourcehacker.com/2012/ 10/24 / ssh-key-and-passwordless-login-basics-for-developers /
Monte el sistema de archivos remoto como local utilizando
osxfuse
ysshfs
como se menciona en los comentarios. Esto puede ser un poco difícil, dependiendo de la versión de OSX y sus habilidades con los sistemas de archivos UNIX.Hackea algo como rmate que edita archivos a través de túneles remotos usando algún tipo de demonio local (muy difícil, engorroso, pero compatible con sudo) http://blog.macromates.com/2011/mate-and-rmate/
Además, en teoría, puede instalar X11 en el servidor remoto y ejecutar Sublime allí mediante el reenvío VNC o X11, pero no tendría sentido hacerlo.
fuente
Puede usar rsub , que está inspirado en TextMate's
rmate
. De la descripción:Aquí hay un buen tutorial sobre cómo configurarlo correctamente.
fuente
Estoy en Windows y he usado 4 métodos: SFTP , WinSCP , Unison y Sublime Text en Linux con reenvío X11 a través de SSH a Windows (sí, puedes hacerlo sin configuraciones desordenadas y usando una herramienta gratuita).
La cuarta forma es la mejor si puede instalar software en su máquina Linux.
La cuarta forma:
MobaXterm
subl
Nota: Al invocar subl si se queja de una determinada biblioteca, asegúrese de instalarlos para invocar con éxito sublimetext de mobaxterm.
Si no puede instalar software en su caja Linux, lo mejor es Unison. ¿Por qué?
SFTP
Configuración: instale el paquete SFTP Sublime Text. Este paquete requiere una licencia.
En la configuración sftp, generalmente configuro:
Esto, además de un terminal SSH para la máquina, me brinda una experiencia de edición remota bastante fluida.
WinSCP
A partir de entonces, WinSCP mantendrá sus cambios sincronizados.
Trabaja en la carpeta local usando SublimeText. Solo asegúrate de que Sublime Text esté configurado para adivinar las terminaciones de línea del archivo que se está editando.
Unísono
He descubierto que si el árbol de origen es masivo (alrededor de unos cientos de MB con una jerarquía profunda), entonces el método WinSCP descrito anteriormente podría ser un poco lento. Puede obtener un rendimiento mucho mejor con Unison . La desventaja es que Unison no es automático (necesita activarlo con una pulsación de tecla) y requiere que se ejecute un componente del servidor en su máquina Linux. La ventaja es que las transferencias son increíblemente rápidas, es muy confiable e ignorar archivos, carpetas y extensiones es increíblemente fácil de configurar.
fuente
SFTP setup
enlace. No sabía si SFTP era software de Windows o un paquete Sublime.Como seguimiento a la respuesta de @ ubik, estos son los tres pasos simples (una vez) para que el comando 'subl' funcione en su servidor remoto:
rsub
paquete en Sublime Text usando el Sublime Package Manager[ Local ] Ejecute el siguiente comando Bash (esto configurará un túnel SSH , que es la salsa secreta de rsub):
[ Servidor ] Ejecute el siguiente comando Bash en su servidor remoto (esto instalará el comando de shell 'subl'):
¡Y voilá! Ahora estás usando Sublime Text sobre SSH.
Puede abrir un archivo de ejemplo en Sublime Text desde el servidor con algo como
subl ~/test.txt
fuente
/usr/local/bin/subl: connect: Connection refused /usr/local/bin/subl: line 200: /dev/tcp/localhost/52698: Connection refused Unable to connect to TextMate on localhost:52698
. Pensamientos?Estoy en MacOS, y la forma más conveniente para mí es usar CyberDuck , que es gratuito (también disponible para Windows). Puede conectarse a su sistema de archivos SSH remoto y editar su archivo usando su editor local. Lo que hace CyberDuck es descargar el archivo a un lugar temporal en su sistema operativo local y abrirlo con su editor. Una vez que guarde el archivo, CyberDuck lo cargará automáticamente a su sistema remoto. Parece transparente como si estuviera editando su archivo remoto utilizando su editor local. Los desarrolladores de Cyberduck también hacen MountainDuck para montar sistemas de archivos remotos.
fuente
Puedes probar algo en lo que he estado trabajando llamado ' xeno '. Le permitirá abrir archivos / carpetas en Sublime Text (o cualquier editor local realmente) a través de una conexión SSH y sincronizar automáticamente los cambios en la máquina remota. Debería funcionar en casi todos los sistemas POSIX (yo mismo lo uso desde OS X para conectarme a máquinas Linux y editar archivos en Sublime Text). Es gratis y de código abierto. Me encantaría algunos comentarios.
Para más información: es básicamente un mashup Git / SSH escrito en Python que le permite editar archivos y carpetas en una máquina remota en un editor local. No tiene que configurar los módulos del kernel, no necesita tener una conexión persistente, todo es automático y no interferirá con el control de origen existente porque utiliza un repositorio Git fuera del trabajo. Además, debido a que está construido en Git, es extremadamente rápido y admite la fusión automática de archivos que podrían estar cambiando en ambos extremos, a diferencia de SSHFS / SFTP, que simplemente bloqueará cualquier archivo con marcas de tiempo más antiguas.
fuente
Puede usar sftp para montar el directorio remoto en su máquina de ubicación y luego simplemente abrir los archivos usando texto Sublime de la forma habitual.
Para montar el directorio remoto usando sftp, ingrese lo siguiente en su administrador de archivos Linux;
Puede parecer lento dependiendo de las velocidades de Internet. Pero esto funcionó para mí.
fuente
Sé que esto es muy antiguo, pero tengo una forma genial de hacerlo que vale la pena compartir.
Lo que se requiere en Conemu y WinSCP . Estas son instrucciones simples
Abra WinSCP.exe e inicie sesión en mi servidor remoto deseado (he
descubierto que es importante iniciar sesión antes de adjuntar ...).
En las preferencias de WinSCP: dos configuraciones para cambiar. Elija la interfaz de tipo Explorer y no Commander, para que no vea los archivos locales. A menos que quieras (pero parece que sería un asco aquí). Configura Sublime como tu editor predeterminado.
Con ConEmu abierto, haga clic derecho en la barra de pestañas y seleccione la opción
Attach to...
. Se abrirá un cuadro de diálogo con sus aplicaciones en ejecución. Elija, WinSCP y seleccione Aceptar. ConEmu ahora tendrá una pestaña abierta con WinSCP mostrando sus archivos remotos.Haga clic derecho en la pestaña WinSCP y elija
New console...
. Cuando se abra el cuadro de diálogo, ingrese la ruta al ejecutable Sublime en su sistema. Antes de presionarStart
, en el cuadro que diceNew console split
seleccione el botón de opciónto right
y establezca el porcentaje. Por lo general, elijo el 75%, pero puede personalizarlo a su gusto y se puede cambiar más adelante.Sidebar->Hide Sidebar
y bam, ahora tiene archivos remotos exactamente de la misma manera que lo haría localmente, con algunas advertencias, por supuesto, que viene con la edición de cualquier cosa de forma remota. Sin embargo, WinSCP se está aligerando rápidamente.Tengo dos monitores: el navegador Chrome de la pantalla del monitor izquierdo, el monitor derecho muestra el editor de código. También en
ConEmu
, creo otra pestaña y ssh en el sitio en el que estoy trabajando, para que pueda hacer cosas como ejecutargulp
ogrunt
remotamente y también manipular archivos desde la línea de comandos. Desarrollo acelerado en serio.Aquí hay una captura de pantalla:
fuente
Esta es la forma más fácil de editar localmente archivos que viven en un host remoto donde previamente ha configurado ssh para IP remota
Hecho !!!
Ahora en el host local, simplemente comience a editar archivos ... cuando enumere el directorio localmente, es posible que no enumere nada hasta que cd en subdir o un archivo específico ... carga diferida ... esto no afecta la edición de archivos
así que arriba está realmente editando archivos remotos en
Para OSX o Windows, vea este tutorial de la gente amable en Digital Ocean
fuente
Otra solución mac similar a osxfuse es usar el cliente Transmit FTP desde Panic Software, que le permite montar una carpeta remota como un disco local. Es compatible con SFTP, que es muy seguro.
fuente
He estado trabajando en un proyecto llamado GiySync . Todavía necesita algo de trabajo, pero es de código abierto y lo he estado usando todos los días durante un par de años. También estoy trabajando en una versión nativa de OS X que he llamado GitSyncApp
En este momento es solo OS X, pero debería ser fácil agregar soporte para Linux, y posiblemente también para Windows.
Funciona mirando los eventos del sistema de archivos y usa git para sincronizar una carpeta de proyecto en su máquina local y un servidor.
Probé las otras soluciones como osx fuse, Expand Drive, Transmit, varias soluciones que usaban rsync, etc. Todas funcionan 'OK' para proyectos pequeños, pero si estás trabajando con mucho código no funcionaron para mí.
Muchas de las opciones del sistema de archivos almacenan en caché para mejorar el rendimiento, lo cual está bien, hasta que no lo está. Como si está trabajando con otras personas y alguien más cambia los archivos en el servidor.
También me encontré con problemas si estaba en una red débil o escasa donde terminaría con archivos vacíos. O archivo que no se sincronizó, entonces el almacenamiento en caché se volvió extraño; ojalá te hayas comprometido recientemente. El uso de git resuelve este problema porque verifica la integridad de cada confirmación.
Dos características adicionales:
fuente
Dependiendo de sus necesidades exactas, puede considerar usar BitTorrent Sync. Cree una carpeta compartida en su PC doméstica y su PC laboral. Edite los archivos en la PC de su hogar (usando Sublime o lo que quiera), y se sincronizarán automáticamente cuando guarde. BitTorrent Sync no se basa en un servidor central que almacene los archivos (al estilo de Dropbox y similares), por lo que, en teoría, no debería tener problemas debido a que un tercero almacena información confidencial.
fuente
Una solución que funcionó muy bien para mí: edite localmente en Mac y sincronice el archivo automáticamente en una máquina remota
Asegúrese de tener un inicio de sesión sin contraseña en la máquina remota. Si no, siga estos pasos http://osxdaily.com/2012/05/25/how-to-set-up-a-password-less-ssh-login/
cree un archivo en ~ / Library / LaunchAgents / filesynchronizer.plist, con el siguiente contenido:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>filesynchronizer</string> <key>ProgramArguments</key> <array> <string>/usr/bin/rsync</string> <string>-avz</string> <string>/Users/USERNAME/SyncDirectory</string> <string>USERNAME@REMOTEMACHINE:~</string> </array> <key>WatchPaths</key> <array> <string>/Users/USERNAME/SyncDirectory</string> </array> </dict> </plist>
En una ventana de terminal, ejecute
launchctl load ~/Library/LaunchAgents/filesynchronizer.plist
Eso es. Cualquier cambio en cualquier archivo en ~ / SyncDirectory se sincronizará con ~ / SyncDirectory en la máquina remota. Los cambios locales anularán cualquier cambio remoto.
Esto crea un trabajo de lanzamiento que supervisa SyncDirectory, y cada vez que algo cambia, ejecuta rsync para sincronizar el directorio con la máquina remota.
fuente
lsyncd parece ser una buena alternativa al enfoque sshfs. Si usa "-delay 0" funciona en tiempo real.
fuente
Use FileZilla
Esto se aplica a los usuarios de Mac y Windows (lo uso en Mac). He utilizado varias de las respuestas enumeradas a lo largo de los años y he descubierto que FileZilla se adapta bien a mis necesidades al editar archivos en un host remoto al que tengo acceso SSH. También es rápido de configurar.
View/Edit
.fuente