Skip to content

deni1688/gsync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gsync

This tool synchronizes files between a specified local directory and remote directory. Currently, the implementation is limited to google drive with plans to add more providers like AWS S3, OneDrive as well ad a VPS over SSH. Once those are added it will be possible to use the tool to synchronize files between multiple providers.

Table of contents

Installation

Requirements

  • Git
  • Go >= 1.16
  • make
  1. Clone the repository
git clone https://github.com/deni1688/gsync.git
  1. Install dependencies
go get -u github.com/deni1688/gsync/...
  1. Run gsync directly
go run cmd/gsync/main.go
  1. Build and run gsync CLI binary
make build_cli && ./bin/cli/gsync

Usage

When using gsync to synchronize files between a local directory and google drive, the following steps are required:

  1. Add Google Drive API credentials to $HOME/.gsync with the name credentials.json.
  2. Run the cli binary

You should be prompted to authorize the application via OAuth. From there you should be able to use the cli as follows:


Usage:
gsync [command]

Available Commands:
completion Generate the autocompletion script for the specified shell
help Help about any command
pull pull files from remote gs to local directory
push push files from local directory to remote gs
sync sync files between a remote gs and local directory

Todos

  • Integrate tests
  • Integrate S3
  • Integrate SSH over Rsync

License

gsync is licensed under the MIT license

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages