Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>FTP SFTP DeployNew to Visual Studio Code? Get it now.
FTP SFTP Deploy

FTP SFTP Deploy

yuval-abdm

| (0) | Free
Deploy over FTP, FTPS and SFTP: upload files and folders, browse and edit the server, compare with server, upload on save, migrate from sftp.json. Passwords stay in VS Code secret storage.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

FTP SFTP Deploy

Deploy your project over FTP, FTPS and SFTP right from VS Code: upload files and folders to their place on the server, browse and edit the server, compare with the server, upload on save. Passwords never sit in a file: they are kept in VS Code secret storage.

Features

  • Upload / Download / Compare with server / Delete from server from the Explorer, the editor and editor tabs (files and folders, multi-selection). Every file keeps its relative path on the server.
  • Remote Server view (activity bar → Deploy): browse each profile's server, open a remote file and save it straight to the server, create files and folders, rename, download, compare with the local file, delete (always with a confirmation).
  • Upload on save (uploadOnSave).
  • Several profiles per project (prod, staging…): the active one is shown in the status bar, click it to switch.
  • Migration from the SFTP extension (Natizyskunk / liximomo): one project or all your projects at once, passwords included, with an offer to delete the old sftp.json files (they usually contain passwords in plain text).
  • Progress notifications with cancellation, detailed logs (Show deployment logs).
  • Works great with Changed Files Explorer: one click deploys every git changed file, and removes deleted files from the server.

Configuration

Run FTP SFTP Deploy: Create deployment configuration. It creates .vscode/deploy.json (with auto-completion and validation):

{
  "defaultProfile": "prod",
  "uploadOnSave": false,
  "ignore": [".git", ".vscode", ".DS_Store", "node_modules", "*.log"],
  "profiles": {
    "prod":    { "protocol": "ftp",  "host": "ftp.example.com", "username": "user", "remotePath": "/public_html" },
    "staging": { "protocol": "sftp", "host": "203.0.113.10", "username": "deploy", "remotePath": "/var/www/site",
                 "privateKeyPath": "~/.ssh/id_ed25519", "uploadOnSave": true }
  }
}
Key Description
protocol ftp, ftps or sftp
host, port, username Connection. The password is asked once, then stored in secret storage (shared by every project using the same account).
remotePath Remote folder matching the project root
secure, rejectUnauthorized FTPS: "implicit" for implicit TLS; false to accept a self-signed certificate
privateKeyPath, agent SFTP: private key or SSH agent instead of a password
ignore Excluded patterns. Without /: any path segment (node_modules, *.log); otherwise the relative path (config/secret.php, dist/**)
uploadOnSave, timeout Per profile or for all profiles

Coming from the SFTP extension?

  • When a folder has a .vscode/sftp.json and no deploy.json, you are offered to migrate it.
  • Import configuration from sftp.json migrates the open folder.
  • Migrate all SFTP configurations in a folder… searches every .vscode/sftp.json under a folder (e.g. ~/dev), lets you pick projects, and migrates them all.

Profiles (profiles / defaultProfile), FTPS, SSH keys, ignore, uploadOnSave and connectTimeout are converted. context is not supported (a warning tells you).

Commands

Upload to server · Download from server · Compare with server · Delete from server · Switch deployment profile · Create / Open deployment configuration · Import configuration from sftp.json · Migrate all SFTP configurations in a folder · Forget a saved password · Show deployment logs

Languages

English, French (automatic, following VS Code's display language).


Français

Déploiement FTP, FTPS et SFTP depuis VS Code : upload de fichiers et de dossiers à leur emplacement sur le serveur, parcours et édition du serveur, comparaison, upload à l'enregistrement. Les mots de passe restent dans le coffre sécurisé de VS Code, jamais dans un fichier. La configuration se trouve dans .vscode/deploy.json. La migration depuis l'extension SFTP (un projet ou tous vos projets d'un coup) reprend les mots de passe et propose de supprimer les anciens sftp.json. L'interface s'affiche en français si VS Code est en français.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft