Initial commit
commit
1ac069bf28
|
@ -0,0 +1,15 @@
|
||||||
|
module git2
|
||||||
|
|
||||||
|
#flag -lgit2
|
||||||
|
|
||||||
|
#include "git2.h"
|
||||||
|
|
||||||
|
pub struct C.git_repository {}
|
||||||
|
|
||||||
|
pub struct C.git_clone_options {}
|
||||||
|
|
||||||
|
fn C.git_libgit2_init()
|
||||||
|
|
||||||
|
fn C.git_libgit2_shutdown()
|
||||||
|
|
||||||
|
fn C.git_clone(&&C.git_repository, &char, &char, &C.git_clone_options) int
|
|
@ -0,0 +1,16 @@
|
||||||
|
module git2
|
||||||
|
|
||||||
|
fn init() {
|
||||||
|
C.git_libgit2_init()
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn clone(url string, path string) !&C.git_repository {
|
||||||
|
out := &C.git_repository{}
|
||||||
|
res := C.git_clone(&out, url.str, path.str, 0)
|
||||||
|
|
||||||
|
if res != 0 {
|
||||||
|
return error('Exit code $res')
|
||||||
|
}
|
||||||
|
|
||||||
|
return out
|
||||||
|
}
|
Loading…
Reference in New Issue