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

This version

0.1.8

Download files

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

Source Distribution

scmrepo-0.1.8.tar.gz (63.3 kB view details)

Uploaded Source

Built Distribution

scmrepo-0.1.8-py3-none-any.whl (49.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for scmrepo-0.1.8.tar.gz
Algorithm Hash digest
SHA256 a5e38f69f674f58c7919596ed44c67d5b5206b4504d438db0dd09e81e6093195
MD5 c3f2d0939bb6deae21f9d055efcf379b
BLAKE2b-256 68e27205263855dad4f601759eb97755f9200311a3414e356bcc78f078ed888a

See more details on using hashes here.

Provenance

File details

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

File metadata

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

File hashes

Hashes for scmrepo-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 83fb305efe5f740a0f3634f9ab8f5d007a00a15e2ba88f073591c6ed00272945
MD5 e0babb66d46763216972f80192dd192b
BLAKE2b-256 87b6a0d7bb9e5366726eb62c1386bb6eb3d8b12708e3a851257cc4549bc7c5c2

See more details on using hashes here.

Provenance

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