Now that you’re rocking SSH sessions everywhere, you might actually need to do some work. Let’s say for example on a website that you tell yourself people read, but really they don’t. Good news everyone, WinSCP at its core allows you to transfer files between windows and linux but it does SO much more.

You create “sites” that represent a connection to a server. Advanced options allow you to specify what directory to use on the local and remote side. You can enable recycle bin type functionality and even tunnel by connecting to a jump box first.

Within a site, you can save multiple “location profiles” that consist of a local and remote directory. This allows you to move between frequently used locations on a single server. Such as “/var/website1” and “/var/website2”

You can also create “workspaces” that are essentially everything you have open saved so you can come right back to where you were.

That is all pretty cool, but there are also a couple ways to sync from windows to linux using WinSCP.

The first is straightforward, simply called synchronize.

When the compare is finished a nice overview of all the actions will allow you to intervene on any rogue transfers.

Another way is to use “Keep remote directory up to date”.

After you hit start, any files you change in the local directory will be pushed to the remote directory automagically. This allows you to open your favorite editor and get to coding. Every time you save just the changed files will be sent over.

Speaking of favorite editor, you can also configure WinSCP to use a specific program to open files under “options->preferences”

Now you can double-click a file on the remote side and it will open in Notepad++ (strictly speaking the file will be downloaded to a temp location and winscp will monitor it for changes). When you are done making changes and save it, the file will be updated on the remote side. This is nice when you are not doing any local syncing.

I am not going to get into Notepad++ but if you have not tried it, you should.