This package provides functionality for:
- Uploading changes automatically when you save a file
- Uploading/downloading files to/from the server
- Displaying diffs between the local and remote files with your favourite diff tool
- set difftoolPath in AtomSettingView of
remote-sync
— The path to your diff tool executable
Currently, both SCP/SFTP and FTP are supported.
You can install this like any other Atom package, with one of these methods:
- Open your settings in Atom, select the "Install" tab, search for "remote-sync", and click install on it
- Run
apm install remote-sync
in a terminal - Download or clone this repository to your
~/.atom/packages/
directory
Create file .remote-sync.json
in your project root with these settings:
transport
—scp
for SCP/SFTP, orftp
for FTPhostname
— Remote host addressport
- Remort port to connect on (typically 22 for SCP/SFTP, 21 for FTP)username
— Remote host usernamepassword
— Remote host passwordkeyfile
— Absolute path to SSH key (only used for SCP)passphrase
— Passphrase for the SSH key (only used for SCP)useAgent
— Whether or not to use an agent process, default: false (only used for SCP)target
— Target directory on remote hostignore
— Array of minimatch patterns of files to ignoreuploadOnSave
— Whether or not to upload the current file when saved, default: falseuploadMirrors
— transport mirror config array when upload
SCP example:
{
"transport": "scp",
"hostname": "10.10.10.10",
"port": 22,
"username": "vagrant",
"password": "vagrant",
"keyfile": "/home/vagrant/.ssh/aws.pem",
"passphrase": "your_passphrase",
"target": "/home/vagrant/dirname/subdirname",
"ignore": [
".git/**"
]
}
SCP useAgent
example:
{
"transport": "scp",
"hostname": "10.10.10.10",
"port": 22,
"username": "vagrant",
"useAgent": true,
"target": "/home/vagrant/dirname/subdirname",
"ignore": [
".git/**"
]
}
FTP example:
{
"transport": "ftp",
"hostname": "10.10.10.10",
"port": 21,
"username": "vagrant",
"password": "vagrant",
"target": "/home/vagrant/dirname/subdirname",
"ignore": [
".git/**"
]
}
Upload mirrors example:
{
"transport": "scp",
"hostname": "10.10.10.10",
"port": 22,
"username": "vagrant",
"password": "vagrant",
"keyfile": "/home/vagrant/.ssh/aws.pem",
"passphrase": "your_passphrase",
"target": "/home/vagrant/dirname/subdirname",
"ignore": [
".git/**"
],
"uploadMirrors":[
{
"transport": "scp",
"hostname": "10.10.10.10",
"port": 22,
"username": "vagrant",
"password": "vagrant",
"keyfile": "/home/vagrant/.ssh/aws.pem",
"passphrase": "your_passphrase",
"target": "/home/vagrant/dirname/subdirname_one",
"ignore": [
".git/**"
],
},
{
"transport": "ftp",
"hostname": "10.10.10.10",
"port": 21,
"username": "vagrant",
"password": "vagrant",
"target": "/home/vagrant/dirname/subdirname_two",
"ignore": [
".git/**"
]
}
]
}
- Add a file named
.remote-sync.json
to your project, with the contents above - Open the command palette by pressing cmd + shift + P on a Mac, or ctrl + shift + P on Linux/Windows
- Type in
remote sync reload config
and press enter
That's it!
- Create a folder for your project, and create a file named
.remote-sync.json
in it with the contents above - In the Atom editor, open the command palette by pressing cmd + shift + P on a Mac, or ctrl + shift + P on Linux/Windows
- Type in
remote sync reload config
and press enter - Open the command palette again
- Input
remote sync download all
The package will download all of the files from the remote server for you.
#Make a donation via Paypal