Skip to main content

Make SFTP syncing "easy-peasy lizard squeezy".

Project description


$ sudo apt-get update && sudo apt-get install -y python3 python3-pip
$ sudo pip3 install thegekko

Enable tab-complete

Add the content of this to ~/.bashrc. Then,

$ source ~/.bashrc

Quick Start

Add files or directories you don’t want to sync.

$ gekko camo venv/
Checking for venv/... Exist.
/home/me/gekkotest/.gekkoign saved.

Set up SFTP connection.

$ gekko grip -s MyServer
SSH Port:         22
User:             root
Upload Directory: /root/gekkotest-remote
Remark:           MyServer

Connection Saved.

Set up SFTP connection using a rsa key and specify the ssh port.

$ gekko grip -s MyServer -p 1080 -k ~/.ssh/id_rsa
SSH Port:         1080
User:             root
Upload Directory: /root/gekkotest-remote
Remark:           MyServer
Private key:      /home/ice/.ssh/id_rsa

Check for changes.

$ gekko sense MyServer -p P@ssw0rd
Connecting to Connected.
Checking for /root/gekkotest-remote... Exist.
Changes will be taken:
* /root/gekkotest-remote/
+ /root/gekkotest-remote/assets/logo.png
Disconnecting... Done.

0.102 MB need to upload.

Sync using password. Add “-f” if you want to a full sync. Full sync will erase remote folder and re-upload local files.

$ gekko run MyServer -p P@ssw0rd -r
Connecting to Connected.
Make directory at /root/gekkotest-remote... Skipped.
Change directory to /root/gekkotest-remote... Done.
Ignored:   .gekkoign
Uploading: app/main/ Done.
Uploading: app/templates/index.html... Done.
Skipped:   app/templates/old.html
Ignored:   venv/lib/python3.5/
Ignored:   venv/pip-selfcheck.json
Skipped:   oldone.txt
Uploading: requirements.txt... Done.
Uploading: Done.
Disconnecting... Done.


  • camouflage (camo) : Define a file or a directory which will be ignored when uploading. This will generate ‘.gekkoign’ file.

  • grip (gp) : Create a host which files will be uploaded to. You can also save the host or remove it.

  • list (ls) : Show all the connections.

  • remove (rm) : Remove a connecion.

  • sense (ss) : Check for the changes which will taken in uploading.

  • run (rn) : Start the upload sequence.

  • version (ver) : Show Gekko version.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

theGekko-1.0.0.tar.gz (8.2 kB view hashes)

Uploaded source

Built Distribution

theGekko-1.0.0-py2.py3-none-any.whl (8.8 kB view hashes)

Uploaded py2 py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page