Files

57 lines
2.0 KiB
Markdown

# radicle-git
## ⚠️ THIS REPOSITORY IS NOT ACTIVELY MAINTAINED ⚠️
This repository used to be the home for many Git utilities related to
Radicle. Most of these have moved to the `heartwood` workspace, which
can be found on Radicle at
rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5
## Motivation
The [git2] and [gitoxide] libraries provide low-level APIs for
interacting with git repositories and the git protocol. This family of
crates attempts to provide a higher-level wrapper around those to
provide a more useful API for the Radicle protocol and UI clients
building on top of the protocol.
## Overview
The repository is defined as a series of crates:
* `git-ext` -- provides higher-level types over common types found in `git2`.
* `git-ref-format` -- provides a higher-level API for constructing git.
reference paths. Prefer this over `git-ext`'s `RefLike` and `RefspecPattern`.
* `git-trailers` -- provides a way to parse and construct git trailers.
* `git-types` -- provides higher-level types, e.g. `Namespace`,
`Reference`, `Remote`, etc.
* `link-git` -- provides a higher-level API for git's `refdb`, `odb`,
and the git protocol.
* `macros` -- provides macros for the `git-ext` references types.
* `std-ext` -- provides some utilities extending the standard library.
* `test` -- a shim crate that refers depends on all other, individual
test crates.
## Tests
Please refer to [test/README.md][test] for understanding how our tests
are organised.
## Contribute
Please read [CONTRIBUTING.md][contrib] for a guide on contributing to
this repository.
## Credits
Thanks to the previous maintainers of the `radicle-link` repository,
Kim, Alex, and Fintan, for providing the foundation to work upon -- as
well as the [contributors][link-contributors].
[contrib]: ./CONTRIBUTING.md
[git2]: https://github.com/rust-lang/git2-rs
[gitoxide]: https://github.com/Byron/gitoxide
[link-contributors]: https://github.com/radicle-dev/radicle-link/graphs/contributors
[test]: ./test/README.md