git-remote-s3
raw JSON → 0.3.2 verified Mon Apr 27 auth: no python
A git remote helper for Amazon S3. Enables git push/pull from S3 buckets using S3 URLs. Current version 0.3.2, requires Python >=3.10. Beta stage, infrequent releases.
pip install git-remote-s3 Common errors
error fatal: repository 's3://mybucket/myrepo.git' not found ↓
cause AWS credentials not configured or insufficient permissions.
fix
Check that AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY are set correctly and that the S3 bucket exists.
error fatal: remote error: Unsupported URL protocol ↓
cause Using http or https instead of s3:// scheme.
fix
Use s3://bucket-name/path.git as the remote URL.
error ModuleNotFoundError: No module named 'git_remote_s3' ↓
cause Attempting to import the module in Python code; it's not an importable library.
fix
Do not import in Python. Use as a git remote helper: git clone s3://... or git remote add origin s3://...
Warnings
gotcha The git remote helper only supports S3 URLs in the format s3://bucket-name/repo-path.git. Using regular http:// or https:// will fail. ↓
fix Use s3:// scheme for remote URLs.
gotcha This tool is a git remote helper, not a standalone Python library. Importing git_remote_s3 directly in Python code is not intended and may not work as expected. ↓
fix Do not import in Python scripts; use via git commands.
gotcha Requires AWS credentials configured. The helper uses boto3, which searches for credentials in order: environment variables, ~/.aws/credentials, IAM roles. Missing credentials cause silent failures. ↓
fix Set AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables before using git commands.
deprecated Python 3.9 and below are not supported. Requires >=3.10. ↓
fix Upgrade Python to 3.10+.
breaking Version 0.3.0 changed the S3 URL format from s3://bucket/repo to s3://bucket/repo.git. Older versions may fail with repositories not ending in .git. ↓
fix Ensure repository paths end with .git when using version 0.3.0+.
Imports
- git_remote_s3 wrong
import git_remote_s3correctfrom git_remote_s3 import RemoteS3Helper
Quickstart
git clone s3://mybucket/myrepo.git
cd myrepo
# Make changes
# Configure AWS credentials via environment variables or ~/.aws/credentials
# Push back
git push s3://mybucket/myrepo.git master