Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
FREEDOM251

Freedom251 › Blog › JetBrains Gateway

How to Back Up and Edit Server Files Remotely With an IDE

By Freedom251 Team · · 11 min read

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

The safest pattern is: connect to the server over SSH, make a separate dated local backup, then edit the remote project with an SSH-aware IDE. VS Code Remote – SSH and JetBrains Gateway keep the source on the server while giving you a full local interface. SSHFS is convenient for occasional file work, while rsync is the better choice for creating and refreshing a complete local copy. Keep the pre-edit copy untouched until the change has passed its checks, and treat mirror options such as --delete as potentially destructive.

What remote IDE editing actually does

Remote development does not necessarily download an entire project to your computer. An SSH-based IDE opens a folder on the server, runs commands against the server’s operating system, and transfers only the interface traffic and files needed by the client. This matters when the project is large, dependencies exist only on the server, or the server has the correct runtime, database access, compiler, or deployment credentials.

As an Amazon Associate I earn from qualifying purchases.

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.

With VS Code Remote – SSH, the local application connects through an authenticated SSH tunnel. VS Code installs and runs its server component on the remote operating system; commands and extensions that support remote execution run there as well. Microsoft’s documentation describes the extension as a way to open a remote folder on a machine, virtual machine, or container with an SSH server and use VS Code’s normal feature set.

JetBrains Gateway follows a similar but distinct model. Gateway is a lightweight launcher that starts or downloads the JetBrains backend on the remote host, while JetBrains Client supplies the local interface. The source tree, indexing, builds, debugging, and execution can therefore remain on the server rather than being copied into a local checkout.

#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

SSHFS is different again: it mounts a remote directory through SSH so local applications can browse it as a filesystem. It is useful for a small number of files, but the mounted filesystem is generally slower for bulk reads and writes. Rsync creates or updates a local tree explicitly, which makes it better for backups and local tools that need many files available at once.

Choose the workflow that matches the job

Method Where code lives while you edit Best use Main trade-off
VS Code Remote – SSH Remote server Full IDE editing, terminal use, extensions, and debugging on the host Requires SSH access and remote-side VS Code Server setup
SSHFS Remote filesystem mounted locally Occasional browsing, single-file edits, and simple uploads or downloads Slower for bulk reads and writes
rsync Local synchronized copy plus the remote tree Backups, local analysis, and complete-tree workflows You must choose a sync direction and manage conflicts deliberately
JetBrains Gateway Remote IDE backend with a local client JetBrains indexing, building, debugging, and deployment on the server Consumes remote backend resources and needs a compatible Gateway setup

A practical combination is not an either-or decision. Use Remote – SSH or Gateway for the live editing session, and use rsync to create the rollback copy before touching production files. Use SSHFS only when its simplicity outweighs its performance limitations.

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.

Prerequisites and boundaries

Access you must verify first

  • An OpenSSH-compatible client on your computer.
  • A reachable server running an SSH service and an account permitted to access the project directory.
  • The exact remote path, such as /srv/www/example or /home/deploy/app.
  • Enough local storage for a separate backup destination, preferably on another disk or an external SSD.
  • Permission to read the files you intend to back up and write only the files you intend to change.

Decide what belongs in the backup

A pre-edit copy should be useful for rollback, not a blind dump of every byte on the server. Identify the source directory and decide whether caches, generated build output, dependency directories, logs, uploaded media, and secrets should be excluded. Do not place private keys, production credentials, or unrelated customer data into a general-purpose backup without a specific reason and suitable protection.

Record the rollback point

Before connecting your editor, record the server hostname, remote path, current commit or deployment identifier if the project has one, and the backup timestamp. A dated directory name such as server-copy-2026-10-15-1430 makes it clear which copy predates the edit. Keep that directory separate from any working copy that may later be synchronized back to the server.

Create a verified local backup with rsync

Rsync is designed to compare source and destination and transfer only files that need updating on subsequent runs. That makes it efficient for repeated backups, but efficiency does not remove the need to choose the direction carefully.

1. Create a new destination

Make the destination on a separate disk or external SSD when possible. Use a new dated directory for a rollback snapshot instead of reusing a directory that might contain files from an earlier, unrelated state.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
mkdir -p /backups/server-copy-2026-10-15-1430

On Windows, run the equivalent command in a shell that provides rsync, or create the dated destination through the file manager before starting the transfer.

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. Preview the transfer

When the destination already contains data, perform a dry run first. A dry run lets you inspect the file list without changing the destination.

rsync -rlptzvn --progress --exclude=.git user@hostname:/remote/source/code/path/ /backups/server-copy-2026-10-15-1430/

The trailing slash on the source means “copy the contents of this directory.” Omitting it changes the resulting directory layout, so decide which structure you want before running the real transfer. The -n flag performs the preview; remove it only after the list looks correct.

3. Run the backup

rsync -rlptzv --progress --exclude=.git user@hostname:/remote/source/code/path/ /backups/server-copy-2026-10-15-1430/

This representative command preserves recursive directory structure, links, permissions, modification times, and other common metadata while compressing data in transit and showing progress. The --exclude=.git example is useful when the backup is meant to contain deployable files rather than repository metadata; remove that exclusion if the repository history is part of your recovery plan.

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

4. Verify the result

Open several important files from the local copy, including the file you plan to edit, a configuration or entry-point file, and any assets needed to understand the change. Compare file counts or rerun rsync in dry-run mode. A clean dry run indicates that the destination currently matches the selected source and excludes, but it is not a substitute for opening the files and checking that the copy is usable.

Why --delete is dangerous for rollback copies

--delete removes destination files that no longer exist in the source. That behavior is appropriate when the destination is disposable and intentionally mirrors the server. It is unsafe for a rollback archive because an old file can disappear from the backup simply because it was removed from the live tree. For a pre-edit snapshot, use a new dated destination or omit --delete so older files are not removed accidentally.

Edit directly with VS Code Remote – SSH

1. Confirm SSH independently

Before troubleshooting the editor, establish that ordinary SSH works:

ssh user@hostname

If this fails, fix hostname resolution, network access, account permissions, keys, or the server’s SSH configuration first. The IDE cannot compensate for a connection that the SSH client cannot establish.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
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.

2. Connect from VS Code

  1. Install the Remote – SSH extension in VS Code.
  2. Open the Command Palette and choose Remote-SSH: Connect to Host….
  3. Select an existing host from your SSH configuration or enter user@hostname.
  4. Accept the host-key prompt only when the fingerprint is one you trust.
  5. After the remote window opens, choose File > Open Folder… and select the project directory on the server.

VS Code installs its server component on the remote operating system and then presents the remote folder in the local window. The integrated terminal, language services, and extensions that support remote execution operate against the server’s files and environment.

3. Make a controlled change

  1. Open only the files required for the task.
  2. Save one small change rather than combining unrelated edits.
  3. Inspect the source-control diff or use a file comparison against the pre-edit copy.
  4. Run the project’s normal tests, formatter, linter, build, or deployment validation in the remote terminal.
  5. Review generated output and logs before deploying or restarting a service.

Because the editor writes to the live remote tree, a save can affect a running application immediately. If the platform supports a staging or maintenance area, edit there first and promote the validated result rather than experimenting in the live directory.

Use SSHFS for occasional file-level work

SSHFS exposes the remote directory as a mounted local path. This can be convenient when you need to inspect or change a few files with a local editor and do not need a full remote IDE. The remote files remain on the server; the mount is only a local view over SSH.

When SSHFS fits

  • Browsing a project or downloading a small number of files.
  • Making a quick single-file change with a familiar local application.
  • Uploading or downloading files without maintaining a complete local tree.

When to avoid it

  • Indexing a large project or running tools that scan thousands of files.
  • Copying build artifacts or dependency trees.
  • Working through a high-latency or unreliable connection.

Microsoft cautions that SSHFS is slower for bulk operations. If an application appears to hang while scanning the mount, switch to a remote IDE session or create a local copy with rsync instead of repeatedly retrying large operations over the mount.

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

Use JetBrains Gateway when the IDE belongs on the server

Gateway is appropriate when JetBrains features, indexing, build tools, debuggers, and runtime dependencies should use the server’s CPU and filesystem. The local client supplies the interface, while the backend IDE components run remotely beside the source code.

  1. Install JetBrains Gateway and confirm that the server is reachable over SSH.
  2. Start a new remote-development connection and provide the SSH host and account.
  3. Choose the project directory on the server.
  4. Let Gateway download or start the required backend components on that host.
  5. Open the project in JetBrains Client and verify that indexing, the configured SDK, and the terminal refer to the remote environment.

This model is not the same as an SFTP editor. Indexes, builds, debugging sessions, and application execution use remote resources, so check server CPU, memory, disk space, and process limits before opening a very large project.

A safe edit, test, and rollback cycle

  1. Identify scope. Write down the exact server, directory, files, service, and expected outcome.
  2. Snapshot first. Create a new dated rsync destination and verify that the intended files open from it.
  3. Connect remotely. Use VS Code Remote – SSH or JetBrains Gateway so commands run in the same environment as the application.
  4. Change one thing. Keep the first edit small enough to review and reverse.
  5. Inspect the diff. Check whitespace, permissions, line endings, generated files, and accidental secret changes.
  6. Run normal checks. Execute the project’s documented tests, linting, build, health check, or smoke test on the server.
  7. Observe the result. Check logs and the relevant endpoint or command after deployment.
  8. Retain the snapshot. Do not overwrite or delete the pre-edit copy until the change has passed its acceptance checks.

If the change fails, stop the service or use the application’s normal maintenance procedure when necessary, restore only the affected files from the dated copy, and rerun the same checks. Keep a record of which files were restored; restoring an entire directory can erase unrelated work made after the snapshot.

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
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Common failure modes and fixes

The IDE cannot connect

Test ssh user@hostname outside the IDE. A failure usually indicates an unreachable host, incorrect account, unavailable SSH service, rejected key, or insufficient permission. Correct that base connection before changing IDE settings.

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

The remote folder opens but extensions fail

Remote extensions execute on the server and may require compatible operating-system libraries, permissions, disk space, or network access for installation. Check the remote extension host logs, install only the extensions needed for the project, and confirm that the server can access required package or tool sources.

Rsync copies the wrong directory level

Check the trailing slash on the source path. /remote/source/code/path/ copies the contents into the destination; /remote/source/code/path commonly creates a nested path directory. Preview with -n before transferring again.

The backup lost files

Look for --delete, an overly broad exclude, or a destination that was reused for a mirror. For rollback archives, create a fresh dated destination and omit --delete. Review the dry-run output before every destructive synchronization.

Local and remote edits conflict

Do not treat a backup as a second working copy that can be edited and pushed casually. Decide whether the server or the local tree is authoritative, and use version control or a reviewed rsync direction to reconcile intentional changes. Never run bidirectional synchronization blindly over a live project.

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

SSHFS feels unusably slow

Move bulk operations to rsync or run the IDE remotely. SSHFS adds network latency to filesystem operations, so a tool that performs well on a local disk may become impractical when every metadata lookup crosses the connection.

Security and operational checks

  • Verify the SSH host key before accepting a new connection.
  • Use the least-privileged account that can complete the task; avoid editing as root unless the operation requires it.
  • Protect the local backup because it may contain source code, configuration, or sensitive data.
  • Keep secrets out of general backups when they are not needed for rollback, and apply appropriate filesystem permissions to the backup directory.
  • Record the backup timestamp, server, path, and deployment or commit identifier.
  • Keep the original snapshot separate from any destination used for synchronization.
  • Review every command containing --delete, recursive copy options, or a production path before pressing Enter.
  • Close or unmount SSHFS cleanly and disconnect remote IDE sessions when the task is complete.

Decision guide

Choose VS Code Remote – SSH when

You want a complete editor, integrated terminal, extensions, and debugging while the project remains on a server. It is the most direct choice for teams already using VS Code and comfortable with SSH.

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

Choose JetBrains Gateway when

Your project depends on JetBrains indexing, refactoring, debugging, or build integrations and the server should provide the execution environment.

Choose SSHFS when

You need quick access to a few remote files and do not need high-volume scanning or a full remote backend.

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

Choose rsync when

You need a verifiable local copy, local analysis tools, an offline snapshot, or a repeatable transfer of a complete directory tree. Rsync does not decide which side should win; you must define that policy before synchronizing.

What to retain after the edit

Keep the accepted change’s deployment or commit identifier with the backup record. If the change is rejected, the dated pre-edit copy is your rollback point. If it is accepted, archive or delete the snapshot according to your own retention and security policy rather than assuming a universal schedule. The tools described here provide transport and synchronization; they do not prescribe a retention period, recovery-point objective, recovery-time objective, or backup frequency.

Frequently Asked Questions

Can I edit a server project without copying the whole project locally?

Yes. VS Code Remote – SSH opens the remote folder and runs supported commands and extensions on the host. JetBrains Gateway similarly keeps the IDE backend and source tree on the server while the local client provides the interface.

Should I use SSHFS or rsync for a backup?

Use rsync for a complete, verifiable local tree and repeated incremental updates. SSHFS is primarily a mounted view for browsing and occasional file-level work, and it is slower for bulk operations.

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

Is it safe to add –delete to my backup command?

Only when the destination is disposable and intentionally mirrors the server. Do not use it for a rollback archive unless you have explicitly accepted the risk of removing destination files that no longer exist on the source.

What should I do if a remote edit breaks the application?

Use the documented maintenance or stop procedure, restore only the affected files from the dated pre-edit copy, rerun the project’s checks, and record which files were restored. Keep unrelated newer work out of the rollback operation.

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.

JetBrains Gatewayremote developmentrsyncserver backupsSSHSSHFSVS Code

Leave a Reply

Your email address will not be published. Required fields are marked *

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

Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
PC Slower Than It Used to Be?Free scan - under a minute

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.