Skip to main content

SCM wrapper and fsspec filesystem for Git for use in DVC

Project description

PyPI Status Python Version License

Tests Codecov pre-commit Black

SCM wrapper and fsspec filesystem for Git for use in DVC.

Features

  • Works with multiple backends: pygit2, dulwich and gitpython.

  • Provides fsspec filesystem over Git: GitFileSystem.

See fsspec docs for full list of available fs methods.

Requirements

Installation

You can install scmrepo via pip from PyPI:

$ pip install scmrepo

Usage

Git File System

scmrepo provides fsspec based gitfs that provides fs-like API for your git repositories without having to git checkout them first. For example:

from scmrepo.fs import GitFileSystem

fs = GitFileSystem("path/to/my/repo", rev="mybranch")

for root, dnames, fnames in fs.walk("path/in/repo"):
    for dname in dnames:
        print(fs.path.join(root, dname))

    for fname in fnames:
        print(fs.path.join(root, fname))

Contributing

Contributions are very welcome. To learn more, see the Contributor Guide.

License

Distributed under the terms of the Apache 2.0 license, scmrepo is free and open source software.

Issues

If you encounter any problems, please file an issue along with a detailed description.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scmrepo-1.0.2.tar.gz (70.2 kB view details)

Uploaded Source

Built Distribution

scmrepo-1.0.2-py3-none-any.whl (54.7 kB view details)

Uploaded Python 3

File details

Details for the file scmrepo-1.0.2.tar.gz.

File metadata

  • Download URL: scmrepo-1.0.2.tar.gz
  • Upload date:
  • Size: 70.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for scmrepo-1.0.2.tar.gz
Algorithm Hash digest
SHA256 08babb115810ad646639c24b46b80944a2bc394635cabe2b2d85577c3e9b4550
MD5 56edfe5c42a83a0b4a042c0e329b65a5
BLAKE2b-256 722b1eb3f68b2cfdcfd6b3615b34cc0301748b9da5f5bb10e1c50c0069b07074

See more details on using hashes here.

File details

Details for the file scmrepo-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: scmrepo-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 54.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for scmrepo-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d5cf8b088556036d54cb9ba93712e3e890cf45ee169a2ae86b1a84b6d39ec74c
MD5 db7ee407abf9a8e30e3de4be44b67e56
BLAKE2b-256 c3683b21e3313bfed797ed2983c0efb1ab93c67078cb17cbf99ceb3660d41166

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page