GoogleCloudPlatform / GoogleCloudPlatform/gsutil

"gsutil is not the recommended CLI for Cloud Storage. Use gcloud storage commands in the Google Cloud CLI instead." what's the difference?

Open
#1,778 6 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
918
Forks
335
PR merge metrics
No merged PRs in 30d

Description

per
https://cloud.google.com/storage/docs/gsutil/commands/rsync

I see there is now a note "Important: gsutil is not the recommended CLI for Cloud Storage. [Use gcloud storage](https://cloud.google.com/storage/docs/discover-object-storage-gcloud) commands in the Google Cloud CLI instead."

Is there an explanation somewhere about the difference between "gsutil rsync" and "gcloud storage rsync"? Examining the python files in my google-cloud-sdk installation shows they are quite different but it's not clear to me if the features are actually any different.

So for example my original command
/usr/bin/gsutil -m rsync -C -e -P -r -x '(.gnupg|.*\.fifo\..*|.cache|.*Icon\r$|.*fifo*)' /data/dataset1 gs://backup-dataset1
will turn into
gcloud storage rsync -c --ignore-symlinks -P -r -x '(.gnupg|.*\.fifo\..*|.cache|.*Icon\r$|.*fifo*)' /data/dataset1 gs://backup-dataset1

but what's the difference? Do they hit the same REST API underneath anyway?

Contributor guide

Open the contributing guide

Research direction

Start with the linked gsutil rsync documentation and the Google Cloud Storage gcloud documentation, then compare the two rsync command interfaces and the Python implementations mentioned in the issue. Done means documenting their behavioral and feature differences, including whether they use the same REST API and how the example command maps between tools.

Written by the indexing model from the issue text.

Assessment

Tech stack
google-cloud, python
Domain
cli, cloud, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.