Giter Club home page Giter Club logo

remote-sync-test's Introduction

Atom Remote Sync

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.

Installation

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 and enter the directory run apm install

Usage

Create file .remote-sync.json in your project root with these settings:

  • transportscp for SCP/SFTP, or ftp for FTP
  • hostname — Remote host address
  • port - Remort port to connect on (typically 22 for SCP/SFTP, 21 for FTP)
  • username — Remote host username
  • password — Remote host password
  • keyfile — 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 host
  • ignore — Array of minimatch patterns of files to ignore
  • uploadOnSave — Whether or not to upload the current file when saved, default: false
  • uploadMirrors — transport mirror config array when upload
  • deleteLocal - whether or not to delete the local file / folder after remote delete

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": [
    ".remote-sync.json",
    ".git/**"
  ]
}

SCP useAgent example:

{
  "transport": "scp",
  "hostname": "10.10.10.10",
  "port": 22,
  "username": "vagrant",
  "useAgent": true,
  "target": "/home/vagrant/dirname/subdirname",
  "ignore": [
    ".remote-sync.json",
    ".git/**"
  ]
}

FTP example:

{
  "transport": "ftp",
  "hostname": "10.10.10.10",
  "port": 21,
  "username": "vagrant",
  "password": "vagrant",
  "target": "/home/vagrant/dirname/subdirname",
  "ignore": [
    ".remote-sync.json",
    ".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": [
    ".remote-sync.json",
    ".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": [
	    ".remote-sync.json",
        ".git/**"
      ]
    },
    {
      "transport": "ftp",
      "hostname": "10.10.10.10",
      "port": 21,
      "username": "vagrant",
      "password": "vagrant",
      "target": "/home/vagrant/dirname/subdirname_two",
      "ignore": [
	    ".remote-sync.json",
        ".git/**"
      ]
    }
  ]
}

Usage example

Existing project

  1. Add a file named .remote-sync.json to your project, with the contents above
  2. Open the command palette by pressing cmd + shift + P on a Mac, or ctrl + shift + P on Linux/Windows
  3. Type in remote sync reload config and press enter

That's it!

From scratch, with a remote server

  1. Create a folder for your project, and create a file named .remote-sync.json in it with the contents above
  2. In the Atom editor, open the command palette by pressing cmd + shift + P on a Mac, or ctrl + shift + P on Linux/Windows
  3. Type in remote sync reload config and press enter
  4. Open the command palette again
  5. Input remote sync download all

The package will download all of the files from the remote server for you.

#Make a donation via Paypal Make a donation via Paypal Click 'Send Money' after login PayPal, and my PayPal account is: lx1988cyk#gmail.com

remote-sync-test's People

Contributors

yongkangchen avatar gawdl3y avatar vslinko avatar nfour avatar octoshrimpy avatar thesysadmin avatar clonn avatar rajendrant avatar wescossick avatar zkwentz avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.