2010-04-08 26 views
50

ME ENCANTA usar TextMate en mi MacBook. Es genial.¿Editar archivos remotos a través de SSH, usando TextMate?

Desafortunadamente, quiero editar algunos archivos directamente en mi servidor de desarrollo, ya que es difícil recrear el entorno localmente. Estoy usando Git, así que una alternativa es simplemente editar localmente, git commit, git push y luego git merge, pero eso es algo complicado cada vez que quiero hacer un cambio simple.

Prefiero solo ... usar otra solución. Una cosa que probé es montar un disco duro a través de MacFusion y luego cargarlo en un editor. ¡Pero eso es tan loco/lento!

¿Alguien ha preparado una solución mejor?

+0

¿Qué tipo de configuración de servidor tiene usted? El número de cosas que puede hacer con Mac OS X y un bit de línea de comandos (a veces grande) es extraordinario: Scala, Python, Redis, Couch, Ruby ... – romainl

Respuesta

36

OK - aquí está el que funciona en Mountain Lion.

  1. Ir a http://osxfuse.github.com/
  2. Instale el fusible para OS X
  3. Instalar SSHFS para OS X
  4. A continuación, los siguientes comandos en el terminal:

mkdir /Volumes/SSHFS

/usr/local/bin/sshfs [email protected]:/path/to/dir /Volumes/SSHFS 

Hecho.

También recomendaría utilizar el plugin ReMate tal como lo señaló otro usuario para evitar que TextMate emita balones de playa cada vez que lo vuelva a enfocar. Enlace:

Remate http://ciaranwal.sh/remate

+0

Pero la molestia es que cada vez que cierras tu computadora portátil y tu wifi se desconecta, tienes que volver a ejecutar el comando sshfs. –

1

que no es necesario que push cada vez que realice cambios simples; git es un sistema de control de versiones distribuidas, commit en su repositorio local para los pequeños cambios. Debería solo push en el repositorio remoto una vez que haya terminado de trabajar en una característica/error (o para una característica realmente grande, una subfeature completa). Bueno, eso es suponiendo que puedas recrear el ambiente; que aparentemente no puedes.

Un editor de texto decente puede tener integración con su sistema de versión de control favorito; Si no puede configurar su editor para que se comprometa y presione desde dentro de su editor, obtenga un editor decente.

Se puede configurar un editor aún mejor para guardar, confirmar, pulsar, compilar y ejecutar el programa con un solo clic o con la tecla.

+1

Estoy de acuerdo con todo, pero el OP escribió que no puede para replicar es el entorno local. Eso significa que no puede probar el código y se le obliga a realizar el baile de confirmación/inserción cada vez que guarda sus archivos. – romainl

+0

@romainl: El punto es que cualquier editor de texto bueno se puede configurar para guardar, confirmar y enviar, con un solo clic/tecla. Si TextMate no puede hacer eso, entonces debe elegir un mejor editor de texto. –

+0

Estoy totalmente de acuerdo con su punto. De hecho, llegué a una especie de "meseta" con TextMate y finalmente abandoné Vim hace unos meses. Realmente no quiero parecer un predicador o algo así, pero mi primera respuesta a la mayoría de las preguntas relacionadas con TM sería "cambiar a Vim o Emacs" si no me controlo. – romainl

11

Utilizo Fetch y TextMate para esas tareas. Fetch se puede configurar para usar TextMate como un editor externo e incluso puede abrir automáticamente archivos en TextMate haciendo doble clic.

Al guardar la ventana en TextMate, automáticamente se vuelve a enviar el archivo al servidor. Por supuesto, tendría que confirmar los cambios en el servidor más adelante.

Estoy seguro de que la mayoría de los clientes de FTP de Mac podrían hacer lo mismo.

+4

Hago lo mismo con Cyberduck. –

+4

Sí. Transmitir y (mi favorito) Yummy FTP hacen eso también. – romainl

+0

¿No puedes simplemente montar el FTP remoto usando el comando K de Finder y conectarte a una URL como ftp (s): // servidor/carpeta /? – Capsule

0

MacFusion es bastante dulce gratis, básicamente ssh-mount de directorios. http://macfusionapp.org/

Transmit 4 tiene una característica similar, aunque cuesta $$.

Pruebe http://ciaranwal.sh/remate/ si parece lento, ya que eso desactivará que textmate actualice la lista de archivos con tanta frecuencia.

1

Si no puede, por algún motivo, replicar su entorno localmente y aún desea utilizar TextMate, el combo FTP client + TextMate es la mejor solución que se me ocurre. MacFusion y todas las otras soluciones similares están ordenadas en el papel pero terriblemente lentas.

Si se siente lo suficientemente aventurero y confiado para abandonar el requisito de TextMate, SSH + Vim en el terminal funciona increíblemente bien.

¿Está seguro de que no puede replicar en todo su entorno remoto?

1

Sé que esta pregunta ya tiene varias respuestas, y ha pasado un tiempo, pero también quería señalar DokanSSHFS: utilizará SSH para crear una unidad local de la ubicación del directorio en el servidor que elija. Luego puede usar su editor de elección para editar los archivos como si estuvieran en un disco local.

5

Utilizo la versión gratuita de TextWrangler solo por esto y funciona muy bien. Puedo cargar y guardar archivos a través de sftp.

+1

¡Sí! Esto funciona genial –

3

La respuesta correcta es usar sshfs y asegurarse de que "Realizar ahorros atómicos" esté marcado en la ventana de preferencias de Textmate. La forma más fácil de configurar sshfs es usar Macfusion. http://macfusionapp.org/.

+0

estaba usando macfusion por un tiempo hasta que me di cuenta de que estaba causando una extraña acción de enlace de archivo oculto en los directorios ssh'd ... dejó de suceder cuando utilicé la opción de mac "conectar a la red" en el buscador – Kristian

0

Use Fuse para OS X http://osxfuse.github.com y el paquete complementario, SSHFS (misma URL) e instálelos. Instalé las bibliotecas de compatibilidad MacFUSE desde allí también, solo por si acaso.

Luego, instale http://macfusionapp.org y siga las instrucciones que se encuentran aquí (https://github.com/osxfuse/osxfuse/wiki/SSHFS) para configurar macfusion para usar las bibliotecas más nuevas.

Tuve problemas para autenticarse con contraseña, así que configuré la autenticación de clave ssh y usé macfusion sin contraseña. Funciona de maravilla.

8

Lo mejor sería utilizar el guión de TextMate , siga el enlace y encontrará las instrucciones de abajo, lo recomiendo ya que le hará la vida más fácil y manejar todo el Nitty- Arenoso.

0

Si usa un IDE, puede simplemente configurar un túnel SSH en su servidor de desarrollo y editar sus archivos desde la comodidad de su IDE favorito. Guardar los archivos localmente sería automáticamente a continuación, empuje los archivos en el servidor dev, así

PS: Yo no estoy apoyando el uso de IDE

0

Es necesario rmate funciona bien para editar archivos en el servidor a través de SSH usando TextMate en tu máquina local. Github link here

1

La mayoría de las soluciones propuestas se centran en sshfs de una forma u otra. He intentado estas soluciones, pero encontré que la confiabilidad del sistema de archivos no siempre es tan buena como se desea.

Hay una herramienta llamada rmate, que permite la edición de archivos remotos en texto mate.

Uso de comandos de sesión ssh para editar el archivo en el servidor:

rmate file_name 

El readme en github proporciona fácil de seguir las instrucciones sobre cómo configurarlo.

Cuestiones relacionadas