SCM wrapper and fsspec filesystem for Git for use in DVC
Project description
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
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08babb115810ad646639c24b46b80944a2bc394635cabe2b2d85577c3e9b4550 |
|
MD5 | 56edfe5c42a83a0b4a042c0e329b65a5 |
|
BLAKE2b-256 | 722b1eb3f68b2cfdcfd6b3615b34cc0301748b9da5f5bb10e1c50c0069b07074 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | d5cf8b088556036d54cb9ba93712e3e890cf45ee169a2ae86b1a84b6d39ec74c |
|
MD5 | db7ee407abf9a8e30e3de4be44b67e56 |
|
BLAKE2b-256 | c3683b21e3313bfed797ed2983c0efb1ab93c67078cb17cbf99ceb3660d41166 |