4个版本
0.2.1 | 2019年3月27日 |
---|---|
0.2.0 | 2019年2月25日 |
0.1.1 | 2018年12月11日 |
0.1.0 | 2018年12月8日 |
#13 in #libgit2
在nip中使用
50KB
1K SLoC
nip_core
lib.rs
:
nip_core
是一个库,允许您以编程方式与nip仓库交互。
extern crate failure;
extern crate git2;
extern crate ipfs_api;
extern crate nip_core;
use failure::Error;
use git2::Repository;
use ipfs_api::IpfsClient;
use nip_core::{NIPIndex, NIPRemote};
// Open the local repository
let mut repo = Repository::open_from_env()?;
// Get a handle for IPFS API
let mut ipfs = IpfsClient::default();
// Instantiate a brand new nip index
let mut idx = NIPIndex::from_nip_remote(&NIPRemote::NewIPFS, &mut ipfs)?;
// Upload the full object tree behind a specified local ref to IPFS
idx.push_ref_from_str("refs/heads/master", "refs/heads/master", false, &mut repo, &mut ipfs)?;
// Also upload the brand new index itself
let nip_remote: NIPRemote = idx.ipfs_add(&mut ipfs, None)?;
println!("Success! refs/heads/master uploaded to remote {}", nip_remote.to_string());
依赖关系
~23–35MB
~608K SLoC