9 个版本 (破坏性)
0.6.0 | 2022 年 1 月 23 日 |
---|---|
0.5.0 | 2021 年 12 月 20 日 |
0.4.0 | 2021 年 11 月 14 日 |
0.3.1 | 2021 年 2 月 27 日 |
0.0.1 | 2021 年 2 月 6 日 |
#645 in 构建工具
每月下载 50 次
用于 git-event
51KB
962 行
git-meta
Git-meta 是一个用于收集关于 git 仓库和提交信息的功能集合
lib.rs
:
Git-meta
Git-meta 是一个用于收集关于 git 仓库和提交信息的功能集合。您可以使用 GitRepo::open(path)
打开现有的仓库(例如,提供分支和提交。提供 None
以使用当前签出的值)
use std::path::PathBuf;
use git_meta::GitRepo;
GitRepo::open(
PathBuf::from("/path/to/repo"),
Some("main".to_string()),
Some("b24fe6112e97eb9ee0cc1fd5aaa520bf8814f6c3".to_string()))
.expect("Unable to clone repo");
您可以使用 GitRepo::new(url)
创建一个用于克隆的新仓库
use std::path::PathBuf;
use git_meta::{GitCredentials, GitRepo};
use mktemp::Temp;
let temp_dir = Temp::new_dir().expect("Unable to create test clone dir");
let creds = GitCredentials::SshKey {
username: "git".to_string(),
public_key: None,
private_key: PathBuf::from("/path/to/private/key"),
passphrase: None,
};
GitRepo::new("https://github.com/tjtelan/git-meta-rs")
.expect("Unable to create GitRepo")
.with_credentials(Some(creds))
.to_clone()
.git_clone_shallow(temp_dir.as_path())
.expect("Unable to clone repo");
注意:浅克隆需要安装 git
CLI
依赖项
~20MB
~431K SLoC