diff --git a/apps/servers/octopus/supergit/Cargo.toml b/apps/servers/octopus/supergit/Cargo.toml index 5646d27c564..ca9fb5ccca6 100644 --- a/apps/servers/octopus/supergit/Cargo.toml +++ b/apps/servers/octopus/supergit/Cargo.toml @@ -1,14 +1,14 @@ [package] name = "supergit" description = "A strongly typed, read-only representation of a git repository" -version = "0.2.0" +version = "0.2.1" authors = ["Katharina Fey "] edition = "2018" license = "GPL-3.0-or-later" documentation = "https://docs.rs/supergit" readme = "README.md" +repository = "https://git.spacekookie.de/kookienomicon/about/apps/servers/octopus/supergit" [dependencies] -git2 = "0.11" -async-std = { version = "1.0", features = ["unstable"] } -atomptr = "1.0" \ No newline at end of file +atomptr = "1.0" +git2 = "0.11" \ No newline at end of file diff --git a/apps/servers/octopus/supergit/README.md b/apps/servers/octopus/supergit/README.md index 6c6d3f387f9..b105f186da7 100644 --- a/apps/servers/octopus/supergit/README.md +++ b/apps/servers/octopus/supergit/README.md @@ -1,3 +1,33 @@ -# supergit +
+ +

supergit

+
-A typed wrapper around libgit2. + +Strongly typed git repository explorer This library provides a more +Rustic interface for git repositories, built on the `git2` bindings. +If you want more low-level access to your repository, consider using +that library instead. + +supergit aims to make queries into a git repo as typed and easy as +possible. Start by creating a `Repository`, and enumerating or +fetching `Branch`es that you are interested in. + +```rust +use supergit::Repository; + +let r = Repository::open("/path/to/repo").unwrap(); +println!("{:?}", r.branches()); + +let branch = r.branch("main").unwrap(); +let head = branch.head(); +println!("{}: {}", head.id(), head.summary().unwrap_or("".into())); +``` + +## Library structure + +The main abstraction layer for a repository is a set of iterators, +over branches, commits, and files in commit trees. Some functions +implemented in `supergit` are quite computationally intensive; they +are marked as such with their runtime cost! It's recommended to +include `supergit::prelude` to get started with development. diff --git a/apps/servers/octopus/supergit/logo.png b/apps/servers/octopus/supergit/logo.png new file mode 100644 index 00000000000..0ae7a35c98b Binary files /dev/null and b/apps/servers/octopus/supergit/logo.png differ diff --git a/apps/servers/octopus/supergit/src/repo.rs b/apps/servers/octopus/supergit/src/repo.rs index 2edc78dcecf..28348709d22 100644 --- a/apps/servers/octopus/supergit/src/repo.rs +++ b/apps/servers/octopus/supergit/src/repo.rs @@ -1,6 +1,6 @@ //! Raw representation wrappers for libgit2 -use crate::branch::{Branch, BranchCommit}; +use crate::branch::Branch; use git2::{self, Oid}; use std::{fmt, sync::Arc};