Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

The safest pattern is to keep the project on the server, connect with an SSH-based IDE, and create a separately stored local copy before changing anything. Use VS Code Remote – SSH for a full editor and terminal on the host, JetBrains Gateway when you want a remote JetBrains backend, SSHFS for occasional file-level work, and rsync when you need a verifiable copy of an entire tree.

Make the backup first, verify that it opens, record where and when it was made, then edit a small change, inspect the diff, run the project’s normal checks on the server, and retain the untouched copy until the change is accepted.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What remote IDE editing actually does

Remote development does not require cloning the whole project onto your laptop. An SSH connection can let a local interface open files that remain on the server, while commands, extensions, indexing, builds, debugging, and runtime dependencies execute on the host.

With VS Code Remote – SSH, the extension opens a remote folder and installs a VS Code Server component on the remote operating system. The local application communicates with that component through an authenticated SSH tunnel, so the source can remain on the server while you use the normal VS Code editor, terminal, and extensions.

#1 Best Overall
Sandisk 2TB Extreme Portable SSD, Up to 1050MB/s, USB-C, USB 3.2 Gen 2, IP65 Water and Dust Resistance, Updated Firmware, External Solid State Drive, SDSSDE61-2T00-G25
  • Get NVMe solid state performance with up to 1050MB/s read and 1000MB/s write speeds in a portable, high-capacity drive(1) (Based on internal testing; performance may be lower depending on host device & other factors. 1MB=1,000,000 bytes.)
  • Up to 3-meter drop protection and IP65 water and dust resistance mean this tough drive can take a beating(3) (Previously rated for 2-meter drop protection and IP55 rating. Now qualified for the higher, stated specs.)
  • Use the handy carabiner loop to secure it to your belt loop or backpack for extra peace of mind.
  • Help keep private content private with the included password protection featuring 256‐bit AES hardware encryption.(3)
  • Easily manage files and automatically free up space with the SanDisk Memory Zone app.(5). Non-Operating Temperature -20°C to 85°C

JetBrains Gateway follows a similar but distinct model: Gateway is a lightweight launcher, the IDE backend and project stay on the remote machine, and JetBrains Client supplies the local interface. This is useful when the server has the required SDKs, build tools, indexes, and data, and you want those resources used for editing, building, or debugging.

SSHFS is different again. It mounts the remote filesystem so local applications can browse and edit it. Rsync is a synchronization utility rather than an IDE: it creates or updates a local tree that you can inspect with local tools and preserve as a rollback copy.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choose the method that fits the job

Method Where code lives during editing Best use Main trade-off
VS Code Remote – SSH Remote server Full IDE editing, terminal, extensions, and debugging on the host Requires SSH access and remote-side VS Code Server setup
SSHFS Remote filesystem mounted locally Occasional single-file edits, browsing, and uploads or downloads Slower for bulk reads and writes
rsync Local synchronized copy plus remote tree Backups, local tools, and complete-tree workflows Requires an explicit sync direction and conflict discipline
JetBrains Gateway Remote backend with a local client JetBrains indexing, build, debugging, and deployment on the server Uses remote backend resources and requires Gateway-compatible setup

These choices are not mutually exclusive. For example, you can edit with Remote – SSH and use rsync separately to pull a dated pre-edit copy. You can mount a directory with SSHFS for a quick one-file fix, then use the same backup discipline before touching the live file.

Back up the server tree before opening it for edits

A remote IDE reduces copying, but it does not create a rollback point. Treat the backup as a separate artifact, not as the working directory shown by the IDE.

1. Identify exactly what must be preserved

Write down the server hostname, the absolute source directory, and the deployment or commit identifier if one exists. Decide whether the backup should include the complete project or only the files needed for this change.

  • Exclude caches and generated build output when they can be recreated and would obscure the source you need to restore.
  • Exclude secrets or other sensitive data that should not be placed in a general-purpose local backup. Handle those items under your organization’s separate secret-storage rules.
  • Include configuration and migration files when they are part of the change and cannot be regenerated safely.

Do not assume that a directory named “source” contains everything required to recover an application. Confirm the path and the files that the deployment process actually reads.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Sale
Samsung T7 Portable SSD 1TB Titan Gray, USB 3.2 Gen 2, Up to 1,050MB/s | Reliable External Solid State Drive Storage for Gaming, Students, Professionals (MU-PC1T0T/AM)
  • MADE FOR THE MAKERS: Create; Explore; Store; The T7 Portable SSD delivers fast speeds and durable features to back up any endeavor; Build your video editing empire, file your photographs or back up your blogs all in an instant
  • SHARE IDEAS IN A FLASH: Don’t waste a second waiting and spend more time doing; The T7 is embedded with PCIe NVMe technology that brings fast read and write speeds up to 1,050/1,000 MB/s¹, making it almost twice as fast as the T5
  • ALWAYS MAKE THE SAVE: Compact design with massive capacity; With capacities up to 4TB, save exactly what you need to your drive – from large working files to game data and everything in between
  • ADAPTS TO EVERY NEED: Whether using a PC or mobile phone, count on the T7 for extensive compatibility²; It’s a true team player when it comes to heavy-duty application usage or file-saving
  • HI RESOLUTION VIDEO RECORDING: Record Ultra High Resolution (4K 60fs) videos directly onto the T7 Portable SSD with your favorite camera or mobile devices; Supports iPhone 15 Pro Res 4K at 60fps video and more³

2. Create a new, dated destination

Use a destination on a separate disk or an external SSD rather than a directory that your editor treats as the live checkout. A dated folder makes it clear which state existed before the edit and prevents a later synchronization from silently replacing the only copy.

Keep the original backup separate from the working copy. Do not edit files inside the rollback directory, and do not point your IDE at it for convenience.

3. Preview the synchronization

When the destination already contains files, run rsync in a dry-run or review mode first. Confirm the source and destination direction, the list of files, and the exclusions before allowing changes to the destination.

4. Pull the copy and verify it

A representative pull command documented by Microsoft is:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
rsync -rlptzv --progress --delete --exclude=.git user@hostname:/remote/source/code/path .

Replace the user, hostname, remote path, and final local destination with your actual values. The command pulls from the server into the current local directory. The options preserve the listed file attributes, compress the transfer, show progress, and exclude the Git metadata directory.

Open key files from the local copy, check that expected directories are present, and record the backup timestamp. If the project has a normal validation command, run an appropriate read-only check against the copy before editing the server tree.

Rank #3
Sandisk 1TB Portable SSD, Up to 800MB/s Read Speeds, Black (Old Model) | External Solid State Drive, Compatible with Laptops & Tablets, Up to 2M Drop Protection, USB 3.2 Gen 2, USB-C to USB-A Cable
  • Solid state performance with up to 800MB/s read speeds in a portable drive. (Based on internal testing; performance may be lower depending on host device, interface, usage conditions and other factors. 1MB=1,000,000 bytes.)
  • Back up your content and memories on a storage solution that fits seamlessly into your mobile lifestyle.
  • Take it with you on your adventures—up to two-meter drop protection means this durable drive can take a beating. (Based on internal testing.)
  • Secure it to your belt loop or backpack for extra peace of mind thanks to the tough rubber hook.
  • From Sandisk, a brand professional photographers trust to take on assignments.

5. Record the rollback details

Store a short note with the server hostname, source path, deployment or commit identifier, backup timestamp, exclusions, and the location of the destination. This turns an anonymous folder into a recoverable point in time.

Use rsync without deleting your rollback copy

Rsync compares source and destination and transfers only files that need updating, so repeated synchronization is more efficient than copying every file again. That makes it suitable for keeping a local working copy current or for making a fresh pre-edit snapshot.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Understand the danger of --delete

The example command includes --delete. That option makes the destination mirror the source by removing destination files that no longer exist at the source. It is appropriate only when the local destination is disposable or intentionally maintained as a mirror.

Do not use --delete against a rollback archive that contains older files you may need. For a rollback point, create a new dated destination for each backup or omit --delete after confirming that retaining older destination files is what you want. Always review the planned changes when the destination is not disposable.

Keep synchronization direction explicit

A pull from server to local is a backup operation. A later push from local to server is a deployment decision. Treat those as different steps and document which one you are running; reversing the direction can overwrite newer server files with an older local copy.

If both locations have been edited, stop and resolve the difference before synchronizing. Rsync can transfer changed files, but it does not decide which version expresses your intended change. Compare the files, choose the authoritative version, and preserve a copy of the state you are replacing.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Sale
Samsung T9 Portable SSD 1TB, USB 3.2 Gen 2x2 External SSD, Up to 2,000 MB/s | External Solid State Drive for Gaming, Students and Professionals, MU-PG1T0B/AM, Black
  • NONSTOP SPEED: Race through projects with our fastest SSD for creators; Load, edit and transfer with sustained read and write speeds of up to 2,000MB/s1; The T9 Portable SSD performs at high speeds even during longer processes
  • DYNAMIC THERMAL GUARD: When you’re elbow-deep in a passion project, the T9 Portable SSD stays cool; Its advanced thermal solution withstands and controls heat to keep the SSD at ideal temperatures—even in heavy use2
  • ADAPTS TO EVERY NEED: Whether you’re using a desktop, camera or a gaming console3, count on the T9 Portable SSD for extensive compatibility; It’s a true team player when it comes to heavy-duty application usage or file-saving
  • STRONG. SOLID. STABLE: From concept to completion – the T9 Portable SSD gives you the longevity to last through heavy use with one convenient drive that dares to go the distance
  • WORKS LIKE MAGIC: Your T9 Portable SSD performs like new with the always up-to-date Magician Software; With firmware updates, extra encryption and continual monitoring of your drive health, it works like a charm

Edit with VS Code Remote – SSH

Prerequisites

  • An OpenSSH-compatible client on the local computer.
  • A reachable remote machine with a running SSH server.
  • Credentials and permissions that allow you to read and change the target directory.

The Remote – SSH extension uses the authenticated SSH connection and installs VS Code Server on the remote operating system. The host must therefore be able to support that remote component and any extensions you plan to run there.

Connect and open the project

  1. Install and enable the VS Code Remote – SSH extension in your local VS Code installation.
  2. Use the extension’s connection command to select or enter the SSH host.
  3. Authenticate to the server and wait for the remote session and VS Code Server component to start.
  4. Open the exact project directory on the remote machine, rather than a broader parent directory containing unrelated or sensitive files.
  5. Confirm in the integrated terminal that commands are running on the intended host and that the working directory is the project you backed up.

The editor, terminal, and remote-capable extensions now operate against the server-side files. Nothing in this connection replaces the local backup; it only gives you a controlled interface to the live tree.

Make a small, reviewable change

  1. Change one logical piece of the project instead of combining unrelated edits.
  2. Inspect the version-control diff or another file comparison before saving a second batch of changes.
  3. Run the project’s normal checks on the remote host, using the same dependencies and runtime that the deployment will use.
  4. Review generated files, logs, and configuration changes separately from source edits.
  5. Deploy only after the diff and checks are acceptable.

Keep the untouched local backup until the change has passed its checks and any deployment verification. It is the simplest way to restore the pre-edit files if the remote process fails.

When SSHFS is the better tool

SSHFS mounts the remote filesystem through SSH, allowing local file browsers and editors to see the server tree. It is convenient for browsing, downloading or uploading a handful of files, and making an occasional single-file edit without setting up a full remote IDE backend.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

That convenience comes with a performance cost: Microsoft cautions that SSHFS is slower for bulk operations. Large directory scans, dependency trees, builds that touch many files, and broad searches can feel slow or unreliable compared with running those operations on the host or transferring a complete tree with rsync.

Use SSHFS safely

  • Back up the target files before mounting the live directory for write access.
  • Mount only the narrow directory you need, not the entire server filesystem.
  • Prefer read-only access when you only need to inspect or copy files.
  • Do not treat the mounted view as a backup; it is another path to the same live files.
  • For a multi-file change, switch to a remote IDE or a deliberate rsync workflow so you can review the complete set of changes.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Use JetBrains Gateway for a remote JetBrains backend

Gateway connects a local launcher to a remote server, downloads or starts the backend components there, and opens the project in JetBrains Client. The source code remains on the remote machine, where the backend performs indexing, builds, debugging, and execution.

Best Value
SSK Portable SSD 500GB External Solid State Hard Drive USB C Up to 1050MB/s
  • Capacity Display Variance: 500GB external ssd often appears as around 465GB on Windows. MacOS can show full 500 GB capacity. This is binary calculation difference and doesn’t affect SSD hard drive actual physical storage
  • 1050 MB/s Speed: Instantly access to your files with blazing-fast 10Gbps external SSD read up to 1050MB/s and write up to 1000MB/s. LED Light indicates USB SSD instant activity
  • Data Security: Solid state drives S.M.A.R.T. health diagnostics​ and adaptive TRIM optimizing data block management ensures consistent write speeds and extends the longevity of the portable SSD
  • USB-C & USB-A Cable: Both cables featuring rapid USB 3.2 Gen2, this USB SSD effortlessly bridges devices, enabling seamless cross-platform file transfers and backup between computers, smartphones, tablets and iPhone
  • Always Fast: No slowdowns for large file transfers. With SLC caching (25% of current available capacity allocated as high-speed cache), this external SSD delivers steady 10Gbps for transfers within the cache capacity

This model is useful when the server has a different operating system, specialized SDKs, large indexes, or dependencies that would be difficult to reproduce locally. JetBrains describes remote development as editing, building, or debugging on a different operating system from the one running the client.

Typical Gateway sequence

  1. Confirm that the server is reachable over SSH and has the resources and permissions required by the selected JetBrains backend.
  2. Launch Gateway and choose the remote-development connection option.
  3. Authenticate to the server and select the project directory stored there.
  4. Allow Gateway to download or start the backend components on the host.
  5. Open the project in JetBrains Client and verify that indexing and terminal commands refer to the remote environment.
  6. Before editing, create and verify the separate local rsync backup described earlier.

Gateway is not an SFTP editor that copies a project to your laptop. Its defining feature is the remote backend, so plan capacity for the server-side indexing and build workload.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A disciplined edit-and-rollback procedure

  1. Confirm the target. Check the hostname, absolute path, logged-in account, and environment before changing a file.
  2. Create the pre-edit copy. Pull the required tree with rsync into a new dated local destination and review the transfer.
  3. Verify the copy. Open key files, confirm the expected structure, and record the timestamp and deployment identifier.
  4. Connect with the appropriate IDE. Use Remote – SSH or Gateway when the project should remain remote; use SSHFS only for limited file-level work.
  5. Change one logical unit. Keep the first edit small enough to understand and reverse.
  6. Inspect the diff. Look for accidental formatting, generated files, credential changes, and edits outside the intended directory.
  7. Run normal checks remotely. Use the project’s established tests, build, lint, or deployment validation on the same host and dependencies.
  8. Deploy deliberately. Treat any push or release operation as a separate, reviewed action rather than an automatic consequence of saving a file.
  9. Retain the rollback point. Do not overwrite or delete the dated pre-edit copy until the change is accepted.

Common failure modes and fixes

The IDE opens the wrong machine or directory

Stop editing and verify the SSH host, account, and absolute path in the terminal. A successful connection is not proof that it is the production host or the intended project. Reconnect to the correct target before making any change.

The backup contains unexpected deletions

Check whether --delete was used and whether the destination already held files. Stop the transfer, preserve the existing destination, and make a new dated backup without destructive mirroring. Never use a rollback archive as a disposable mirror.

Bulk browsing or searches are very slow

Move the operation to the remote IDE or run it on the server. SSHFS is convenient for individual files but is not intended for heavy, whole-tree traffic.

Local and server copies disagree

Do not push either side automatically. Compare the changed files, identify which state is authoritative, and save the state you are about to replace. Then perform one explicit synchronization in the chosen direction.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The remote IDE cannot build or debug

Confirm that the backend is running on the intended host, that the required SDKs and dependencies exist there, and that your account can access the project and tools. Remote editing can work while a missing remote dependency still prevents a build.

How to choose a workflow quickly

  • Choose VS Code Remote – SSH when you want a complete editor, terminal, extensions, and debugging experience against files that stay on the server.
  • Choose JetBrains Gateway when JetBrains indexing, builds, and debugging should use the server’s operating system and resources.
  • Choose SSHFS for occasional browsing or a small number of file transfers, especially when a full remote IDE is unnecessary.
  • Choose rsync when you need a local copy, local analysis tools, repeated incremental synchronization, or a dated rollback archive.

For most live-server changes, combine the first or second option with rsync: the IDE provides the remote execution environment, while rsync supplies an independent recovery point.

What the official guidance does not establish

The Microsoft and JetBrains documentation describes the connection and synchronization mechanisms, not a universal retention period, backup frequency, recovery-point objective, recovery-time objective, or performance benchmark. Set those policies according to the value of your data, your change rate, and your organization’s operational requirements rather than treating a tool’s default behavior as a backup policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.