# prasmussen/gdrive

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/prasmussen-gdrive).**

8,965 stars · 1,160 forks · Go · MIT · archived

## Links

- GitHub: https://github.com/prasmussen/gdrive
- awesome-repositories: https://awesome-repositories.com/repository/prasmussen-gdrive.md

## Description

gdrive is a command line interface client for managing files, folders, and permissions within Google Drive. It functions as a backup utility and synchronization tool, allowing users to interact with their cloud storage through a terminal instead of a web browser.

The project supports server-to-server integration by using service accounts and JSON credential files. This enables non-interactive identity verification and session establishment without requiring interactive user login prompts.

The tool covers bidirectional and one-way synchronization between local directories and remote storage, including recursive downloads, uploads, and deletions. It provides capabilities for file revision management, cloud document format conversion, and granular access control through the assignment of user and group roles.

Additional utilities include file change tracking via page tokens, storage quota retrieval, and the use of ignore-file rules to exclude specific paths from synchronization.

## Tags

### Business & Productivity Software

- [Cloud Drive CLI Clients](https://awesome-repositories.com/f/business-productivity-software/cloud-drive-cli-clients.md) — Provides a comprehensive command line interface for managing the entire lifecycle of files and folders in Google Drive.
- [Google Drive Administration](https://awesome-repositories.com/f/business-productivity-software/google-drive-administration.md) — Provides administrative tools for managing file transfers, permissions, and folder structures via the command line.

### Data & Databases

- [Cloud Storage Sync Tools](https://awesome-repositories.com/f/data-databases/cloud-storage-sync-tools.md) — Synchronizes local file systems with remote Google Drive storage via a command-line utility. ([source](https://github.com/prasmussen/gdrive#readme))
- [Google Drive Synchronization](https://awesome-repositories.com/f/data-databases/edge-to-cloud-synchronization/google-drive-synchronization.md) — Synchronizes local directories with cloud storage using one-way transfers and path exclusion rules.
- [Backup Automations](https://awesome-repositories.com/f/data-databases/edge-to-cloud-synchronization/google-drive-synchronization/backup-automations.md) — Automates the transfer of local files to cloud storage to ensure consistent data backups.
- [Backup Utilities](https://awesome-repositories.com/f/data-databases/edge-to-cloud-synchronization/google-drive-synchronization/backup-utilities.md) — Acts as a backup utility by uploading local data and tracking file revisions for secure remote storage.
- [Bucket File Listings](https://awesome-repositories.com/f/data-databases/file-storage-and-metadata-management/file-status-retrieval/stored-file-retrieval/recursive-file-listing/bucket-file-listings.md) — Displays files and folders in cloud storage based on specific queries, sort orders, and parent filters. ([source](https://github.com/prasmussen/gdrive/blob/master/README.md))
- [Remote File Rename and Delete Operations](https://awesome-repositories.com/f/data-databases/posix-compliant-file-systems/delete-and-rename-semantics/remote-file-rename-and-delete-operations.md) — Supports removing files or directories from a remote store, including recursive directory deletion. ([source](https://github.com/prasmussen/gdrive/blob/master/README.md))

### Content Management & Publishing

- [Synchronization State Tracking](https://awesome-repositories.com/f/content-management-publishing/metadata-tagging/synchronization-state-tracking.md) — Tracks file state using metadata tags to optimize traversal and identify which local files need uploading.
- [Google Drive Content Conversion](https://awesome-repositories.com/f/content-management-publishing/content-formats-exporting/export-formats/pdf-exports/document-exporting/google-drive-content-conversion.md) — Converts files between different formats specifically within the Google Drive ecosystem.
- [Document Format Converters](https://awesome-repositories.com/f/content-management-publishing/content-processing-transformation/document-processing-conversion/document-processing/format-specific-parsers/office-document-parsers/document-format-converters.md) — Allows importing files into native cloud formats or exporting cloud documents into specified MIME types. ([source](https://github.com/prasmussen/gdrive/blob/master/README.md))
- [Document Format Conversions](https://awesome-repositories.com/f/content-management-publishing/document-format-conversions.md) — Translates cloud-native documents into specified file formats during the export and import process.

### Development Tools & Productivity

- [Remote File Synchronization](https://awesome-repositories.com/f/development-tools-productivity/remote-file-synchronization.md) — Provides bi-directional or one-way transfers between a local directory and a remote cloud store. ([source](https://github.com/prasmussen/gdrive/blob/master/README.md))
- [File Pattern Matching](https://awesome-repositories.com/f/development-tools-productivity/file-pattern-matching.md) — Excludes specific files or directories from synchronization using wildcard and recursive glob patterns.
- [Remote File Writing](https://awesome-repositories.com/f/development-tools-productivity/remote-file-transfers/remote-file-writing.md) — Creates new revisions of existing remote files by uploading updated content. ([source](https://github.com/prasmussen/gdrive/blob/master/README.md))
- [Revision Managers](https://awesome-repositories.com/f/development-tools-productivity/revision-histories/deployment-revisions/file-revision-viewers/revision-managers.md) — Enables listing, downloading, or deleting historical versions of a file to track changes over time. ([source](https://github.com/prasmussen/gdrive/blob/master/README.md))
- [Sync Exclusion Rules](https://awesome-repositories.com/f/development-tools-productivity/sync-exclusion-rules.md) — Excludes specific files or directories from synchronization using root-level configuration files and patterns. ([source](https://github.com/prasmussen/gdrive#readme))

### DevOps & Infrastructure

- [Remote Cloud Uploads](https://awesome-repositories.com/f/devops-infrastructure/file-uploaders/s3-file-uploads/bucket-file-uploads/remote-cloud-uploads.md) — Sends files or data from standard input to a remote store with custom parent directories and MIME types. ([source](https://github.com/prasmussen/gdrive/blob/master/README.md))
- [Service Account Integrations](https://awesome-repositories.com/f/devops-infrastructure/service-account-integrations.md) — Enables server-to-server data movement using service accounts to bypass interactive user login prompts.

### Networking & Communication

- [Cloud File Downloads](https://awesome-repositories.com/f/networking-communication/remote-file-downloads/progress-tracking-file-downloads/cloud-file-downloads.md) — Retrieves files and directories from cloud storage to the local system with recursive download support. ([source](https://github.com/prasmussen/gdrive/blob/master/README.md))

### Security & Cryptography

- [Service Account Authenticators](https://awesome-repositories.com/f/security-cryptography/identity-access-management/authentication-strategies/machine-and-protocol-identity/api-machine-authentication/api-key-authentication/service-account-authenticators.md) — Uses JSON credential files to establish server-to-server communication without interactive user login prompts.
- [Permission-Based Access Control](https://awesome-repositories.com/f/security-cryptography/permission-based-access-control.md) — Implements access control by assigning specific roles and domains to files via the remote API.
- [Cloud File Permissions](https://awesome-repositories.com/f/security-cryptography/permission-based-access-control/cloud-file-permissions.md) — Provides mechanisms to manage and assign sharing roles and access permissions for files and folders in the cloud.

### Software Engineering & Architecture

- [Recursive Directory Traversers](https://awesome-repositories.com/f/software-engineering-architecture/recursive-validation-engines/recursive-tree-traversers/file-system-traversers/recursive-directory-traversers.md) — Walks through local and remote folder hierarchies to perform bulk downloads, uploads, and deletions.

### System Administration & Monitoring

- [Service Account Management](https://awesome-repositories.com/f/system-administration-monitoring/multi-account-security-management/google-account-credential-management/service-account-management.md) — Uses JSON credentials to facilitate non-interactive server-to-server communication with the Google Drive API.
