DriveSync ( dsync )
A small, fast command-line tool that keeps a local folder and a Google Drive folder in sync. Push local changes up, pull remote changes down, or just see what differs. Written in Rust, modelled on odeke-em/drive.
dsync init ~/gdrive --remote-folder backups/lab --credentials ~/Downloads/client_secret.json cd ~/gdrive dsync diff # what differs? dsync push # upload local changes (shows the plan, asks first) dsync pull # download remote changes
Install
Homebrew (macOS and Linux):
brew install scaleninja/tap/drivesync
This adds the scaleninja/tap tap, so other scaleninja tools then install with a plain brew install <name> . (If Homebrew refuses with an "untrusted tap" error, run brew trust scaleninja/tap first.)
Or grab a prebuilt binary for Linux or macOS (x86_64 and arm64) from the releases page:
case " $( uname -s ) - $( uname -m ) " in Linux-x86_64) asset=linux-x86_64 ;; Linux-aarch64) asset=linux-arm64 ;; Darwin-x86_64) asset=macos-x86_64 ;; Darwin-arm64) asset=macos-arm64 ;; * ) echo " unsupported platform " ; exit 1 ;; esac curl -fL -o /tmp/dsync " https://github.com/scaleninja/drivesync/releases/latest/download/dsync- $asset " \ && chmod 755 /tmp/dsync && sudo mv /tmp/dsync /usr/local/bin/dsync
Or from source with a Rust toolchain: git clone https://github.com/scaleninja/drivesync && cd drivesync && make install .
... continue reading