An FTP and SFTP client for Mac is best suited when it displays the project that you are working on in one window and the remote server in another, meaning that you can upload, download, and check without changing applications. I’m looking to use Commander One for just that: pushing changed files to a staging server via SFTP, double checking that they’re in the right directory, then downloading logs and a backup.
The task was a standard staging refresh for a small Web project. This included templates, PHP files, compiled CSS and JavaScript, and new images, which were stored in numerous folders, and could easily be overwritten by an unwary upload.
Where file transfers slowed down my development workflow
Before this, my routine involved Finder on one side, a separate transfer app on the other, and a terminal window for quick checks. None of those switches took long, but over a day of small fixes I kept losing track of which window had the current path. Every location had to be found twice, once locally and once on the server. Even a simple question like “did the new stylesheet actually replace the old one?” meant another round of clicking through a different app.
What I needed was a remote server file manager that worked the same way as a local one. Commander One, available on the Mac App Store at https://apps.apple.com/us/app/commander-one-file-manager/id1035236694, is built around two panels, which made it a reasonable fit for the job. One note up front: the FTP/SFTP manager is part of the PRO feature set, so the free mode alone does not cover remote connections.
How I used an SFTP client for Mac to prepare a staging update
I connected to the staging server through the Connections Manager, chose SFTP, and entered the host, the SSH port (22 by default), and my account details. The remote directory opened in the right panel, while the local project stayed in the left. From there, the update followed a fixed order:
- Open the local build and templates folders on the left and the matching web root on staging on the right.
- Download a copy of the remote files I was about to replace into a dated local folder.
- Select only the changed files and drag them to the remote panel. I left the local environment file out of the selection on purpose, since staging uses its own database settings.
- Browse the destination, compare file names and sizes with the local copies, and check that the timestamps show today’s upload.
- Pull the latest application log from the server to check for errors after the update.
One more check after any SFTP upload is file ownership. Uploaded files belong to the SFTP user, which is not always the account the web server runs under, so permissions are worth a quick look.
Because both locations stayed visible the whole time, checking the destination took a glance rather than a trip into another app. I transferred the files in one batch and followed them through the queue instead of waiting on each upload separately. For anyone who has to transfer files to a remote server a few times a week, this is where an FTP and SFTP client for Mac saves the most back-and-forth.
Why SFTP was the right protocol for this workflow
For secure file transfer for developers, the protocol matters as much as the client. SFTP runs over SSH, which encrypts both the transferred data and the login credentials. The IETF’s SSH architecture document, RFC 4251, describes SSH as a protocol for secure remote login and other secure network services over an insecure network, with confidentiality, integrity, and server authentication. Plain FTP does not offer that by default: usernames, passwords, and file contents travel unencrypted.
| Aspect | SFTP | Plain FTP |
| Encryption of data and credentials | Yes, through SSH | No (FTPS adds TLS encryption) |
| Default port | 22 | 21 |
| How I used it | Standard for staging and production | Only for an older host with no other option |
SFTP became my default, with the FTP client for Mac side kept for compatibility. Commander One also supports FTPS, which adds TLS encryption. A client on the Mac that handles both FTP and SFTP still reaches plain-FTP servers, though unencrypted.
What helped during the development workflow
Only a handful of features carried real weight in this scenario:
- Dual panes: a dual-pane file manager for Mac kept source and destination side by side for the whole session.
- Drag and drop: moving files to the server felt the same as moving them between local folders.
- Tabs: I kept a second tab open on the server’s log directory, so switching from upload to diagnostics took one click.
- Operations queue: several uploads ran in the background while I kept browsing the remote tree.
- Preview and remote actions: renaming an outdated file, moving it into an archive folder, deleting a stray test file, or opening a config to read it all happened in the same window.
What mattered was having these in one place, so upload, check, and download stayed in a single window. Unlike a setup where Finder and a transfer app live in separate windows, this layout kept the local and remote views equal. Details on the full feature set, including the PRO pack and other supported connection types, are on the official site at https://commander-one.com/.
What an FTP and SFTP client for Mac changes in a staging workflow
The tested workflow was short: connect over SFTP, open the local project and staging web root side by side, back up the files to be replaced, upload changes, verify the destination, and pull the logs. Commander One handled it in one interface, which made manual staging updates more predictable and easier to verify. It does not replace Git, Terminal, or CI/CD for automated releases. In my setup, automation handles regular deployments, while an FTP and SFTP client for Mac covers the manual work around them. Among FTP/SFTP clients for macOS, a two-panel tool over SFTP fits that role best.
Find Trusted Cardiac Hospitals
Compare heart hospitals by city and services — all in one place.
Explore Hospitals