mirror of
https://github.com/extrawurst/gitui.git
synced 2024-11-27 00:14:52 +03:00
13 lines
719 B
Markdown
13 lines
719 B
Markdown
# asyncgit
|
|
|
|
*allow using git2 in an asynchronous context*
|
|
|
|
This crate is designed as part of the [gitui](http://gitui.org) project.
|
|
|
|
`asyncgit` provides the primary interface to interact with *git* repositories. It is split into the main module and a `sync` part. The latter provides convenience wrapper for typical usage patterns against git repositories.
|
|
|
|
The primary goal however is to allow putting certain (potentially) long running [git2](https://github.com/rust-lang/git2-rs) calls onto a thread pool.[crossbeam-channel](https://github.com/crossbeam-rs/crossbeam) is then used to wait for a notification confirming the result.
|
|
|
|
In `gitui` this allows the main-thread and therefore the *ui* to stay responsive.
|
|
|