Instalación y Configuración de la extensión Sftp de liximomo en Visual Studio Code
Si estamos utilizando VSCode
, es muy probable que necesitemos una extensión con la que poder cargar, descargar y sincronizar nuestros ficheros de proyecto rápidamente.
Para ello podemos instalar y configurar la extensión Sftp
de Liximomo
.
Importante! Actualización de la versión actual para corrección de pequeños Bugs.
«Ha sido creada una nueva extensión a partir de esta llamada Sftp
de Natizyskunk
» que corrige algunos errores con la últimas versiones de VSCode (a partir de la versión 1.60). Lo único que hay que hacer es desinstalar la versión de Liximomo e instalar esta nueva. Más información sobre la extensión haciendo clic aquí.
Características
Entre las características principales de la extensión Sftp, podemos destacar:
- Nos sirve como explorador de ficheros y directorios remotos.
- Sincronización de ficheros y directorios (local a remota y viceversa)
- Diff, para comprobar diferencias entre ficheros locales y remotos.
- Upload y Download de ficheros y directorios.
- Posibilidad de tener diferentes Profiles para un mismo proyecto.
Configuración Inicial
Una vez instalada la extensión, ejecuta (Ctrl+Shif+P) y escribe SFTP: Config
Una vez ejecutado SFTP: Config
, nos creará si aún no existe la carpeta .vscode/ y dentro de ella se habrá creado el fichero de configuración sftp.json
. Una configuración básica con la que poder empezar a trabajar podría ser la siguiente:
1 2 3 4 5 6 7 8 9 10 11 |
{ "protocol": "sftp", "name": "artegrafico.net", "host": "artegrafico.net", "port": 22, "username": "youruser", "password": "******", "remotePath": "httpdocs/", "ignore": [".vscode", ".git", ".DS_Store", "nbproject"], "uploadOnSave": true } |
- Recuerda utilizar el protocolo sftp cuando trabajes con ficheros remotos, ya que te proporciona una conexión segura. Otra opción es utilizar el protocolo ftp a través de TLS.
- La propiedad ignore nos permitirá incluir mediante un array los directorios o carpetas que no deseamos que sean cargados a nuestro ftp remoto.
- La propiedad uploadOnSave carga el fichero al FTP, siempre que guardamos cambios (se puede establecer a true o false).
Configuración de Profiles
Configurar múltiples profiles nos puede ser útil para organizar host dentro de un proyecto. Por lo que podemos utilizarlo si nuestro proyecto tiene diferentes conexiones relacionadas entre si (development, desarrollo, producción, test, etc …).
Para cambiar entre perfiles ejecuta (Ctrl+Shif+P) y haz clic en SFTP: Set Profile
A continuación muestro un ejemplo sencillo configurando diferentes perfiles:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
{ "protocol": "sftp", "name": "artegrafico.net", "port": 22, "username": "youruser", "password": "*******", "profiles": { "prod": { "host": "artegrafico.net", "remotePath": "httpdocs/" }, "dev1": { "host": "dev1.artegrafico.net", "remotePath": "dev1.artegrafico.net/" }, "dev2": { "host": "dev2.artegrafico.net", "remotePath": "dev2.artegrafico.net/", "uploadOnSave": true } }, "ignore": [".vscode", ".git", ".DS_Store", "nbproject"], "defaultProfile": "main", "uploadOnSave": true } |
La extensión Sftp también nos permite hacer Hopping
, lo que significa que podemos realizar una conexión a través de otra.
Configuración de Claves RSA
También podemos incluir nuestras claves RSA
en nuestras configuraciones. Para ello tendremos que usar los siguientes atributos: «privateKeyPath» y «passphrase«. Una configuración básica puede ser la siguiente:
1 2 3 4 5 6 7 8 9 10 |
{ "protocol": "sftp", "host": "tudominio.com", "port": 22, "username": "tudominio.com", "remotePath": "httpdocs/", "uploadOnSave": true, "privateKeyPath": "C:\\Users\\jose\\.ssh\\id_rsa", "passphrase": "nuestra clave adicional rsa" } |
Sincronización de ficheros y directorios
- Sync Local -> Remote
Cualquier fichero que no coincida temporalmente será sincronizado y sino existe será copiado. - Sync Remote -> Local
En dirección contraria desde el FTP remoto a Local - Sync Both Directions
Realiza una comparación de los ficheros donde el más nuevo será el que finalmente esté presente tanto en remoto como en local.
Abrir Conexión SSH en Terminal
Otra de las muchas opciones que nos permite esta extensión es abrir una conexión SSH en el terminal, lo que resulta bastante útil para chequear log, tareas de shell, scripting, etc …
Para chequear el resto de configuraciones y comandos escribe SFTP o haz clic aquí.