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.
Metadata
Release files for scmrepo 3.6.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| scmrepo-3.6.2.tar.gz | 97.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| scmrepo-3.6.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 171.9 kB
Release files / scmrepo-3.6.2.tar.gz
| Download URL | scmrepo-3.6.2.tar.gz |
|---|---|
| Size | 97.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
750741af151e4c602dbf1456b49c7a1d27844527ba94db1e0c580b167cbd9316
|
|
BLAKE2b-256 checksum How to use checksums |
90d562ab01546616c42d05e11fe133ce80e1d5c5c601bfc391de41f52e32ce66
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 31, 2026.
Transparency logRelease files / scmrepo-3.6.2-py3-none-any.whl
| Download URL | scmrepo-3.6.2-py3-none-any.whl |
|---|---|
| Size | 74.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b6d2a904562d3fc8a1a375234ce6f9a3e47ce83cb67257381fa5dc43c6006d4a
|
|
BLAKE2b-256 checksum How to use checksums |
1642f4bb5e4612681d28fb01335d5faa67e1478adc63077c86555776fe89e584
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 31, 2026.
Transparency log