bit

Version:
sha256:241b0c5
component
imports bit:git/filesystem,git/http-client
exports bit:git/git-network-ops,git/git-ops

filesystem interface

mkdir-p(path:string)result<_, string>
write-file(path:string, content:list<u8>)result<_, string>
write-string(path:string, content:string)result<_, string>
remove-file(path:string)result<_, string>
remove-dir(path:string)result<_, string>
read-file(path:string)result<list<u8>, string>
readdir(path:string)result<list<string>, string>
is-dir(path:string)bool
is-file(path:string)bool

http-client interface

http-response:record {
code: s32
headers: list<tuple<string, string>>
}
http-get(url:string, headers:list<tuple<string, string>>)result<tuple<http-response, list<u8>>, string>
http-post(url:string, body:list<u8>, headers:list<tuple<string, string>>)result<tuple<http-response, list<u8>>, string>

git-ops interface

status-result:record {
staged-added: list<string>
staged-modified: list<string>
staged-deleted: list<string>
unstaged-modified: list<string>
unstaged-deleted: list<string>
untracked: list<string>
}
log-entry:record {
id: string
author: string
message: string
timestamp: s64
}
branch-info:record {
name: string
commit-id: string
is-current: bool
}
init(root:string, default-branch:string)result<_, string>
add(root:string, paths:list<string>)result<_, string>
status(root:string)result<status-result, string>
status-porcelain(root:string)result<list<string>, string>
commit(root:string, message:string, author:string, timestamp:s64)result<string, string>
log(root:string, max-count:s32)result<list<log-entry>, string>
checkout(root:string, target:string)result<_, string>
checkout-b(root:string, branch-name:string)result<_, string>
branch-list(root:string)result<list<branch-info>, string>
branch-create(root:string, name:string)result<_, string>
branch-delete(root:string, name:string)result<_, string>
rm(root:string, paths:list<string>, cached:bool)result<_, string>
mv(root:string, source:string, dest:string)result<_, string>

git-network-ops interface

clone(url:string, dest:string, branch:string, depth:s32)result<_, string>
fetch(root:string, remote:string)result<_, string>
push(root:string, remote:string, refspec:string)result<_, string>