pub trait GitOps {
// Required methods
fn branch_status(&self) -> Result<String, Error>;
fn branch_list(&self) -> Result<String, Error>;
fn repo_status(&self) -> Result<String, Error>;
fn repo_files_not_staged(&self) -> Result<Vec<String>, Error>;
fn repo_files_staged(&self) -> Result<Vec<String>, Error>;
fn stage_files(&self, files: Vec<String>) -> Result<(), Error>;
fn commit_staged(
&self,
sign: Sign,
commit_message: &str,
tag: Option<&str>,
) -> Result<(), Error>;
fn push_commit(
&self,
version: Option<&str>,
no_push: bool,
) -> Result<(), Error>;
async fn label_next_pr(
&self,
author: Option<&str>,
label: Option<&str>,
desc: Option<&str>,
colour: Option<&str>,
) -> Result<Option<String>, Error>;
fn create_tag(
&self,
tag: &str,
commit_id: Oid,
sig: &Signature<'_>,
) -> Result<(), Error>;
async fn get_commitish_for_tag(
&self,
version: &str,
) -> Result<String, Error>;
}
Required Methods§
fn branch_status(&self) -> Result<String, Error>
fn branch_list(&self) -> Result<String, Error>
fn repo_status(&self) -> Result<String, Error>
fn repo_files_not_staged(&self) -> Result<Vec<String>, Error>
fn repo_files_staged(&self) -> Result<Vec<String>, Error>
fn stage_files(&self, files: Vec<String>) -> Result<(), Error>
fn commit_staged( &self, sign: Sign, commit_message: &str, tag: Option<&str>, ) -> Result<(), Error>
fn push_commit(&self, version: Option<&str>, no_push: bool) -> Result<(), Error>
async fn label_next_pr( &self, author: Option<&str>, label: Option<&str>, desc: Option<&str>, colour: Option<&str>, ) -> Result<Option<String>, Error>
fn create_tag( &self, tag: &str, commit_id: Oid, sig: &Signature<'_>, ) -> Result<(), Error>
async fn get_commitish_for_tag(&self, version: &str) -> Result<String, Error>
Object Safety§
This trait is not object safe.