shithub: libgit

ref: 485586299c3f6bb71a58ab5348210ca40ee9e8d2
dir: /git.h/

View raw version
#pragma lib "libgit.a"
#pragma src "/sys/src/libgit"

typedef struct Gitlog Gitlog;
struct Gitlog {
	char *hash; /* if nil, end of array */
	char *author;
	char *date;
	char *message;
};

/* initialize git system */
int initgit(char* dir);
int freegitlogs(Gitlog *logs);

/* git commands. files must be relative within repository. The last
   name must be nil. */
int gitcommit(char *msg, char *file, ...);
int gitcommitl(char *msg, char **files);
int gitadd(char *file, ...);
int gitaddl(char **files);
int gitrm(char *file, ...);
int gitrml(char **files);
int gitlog(Gitlog **logs, int n, char *commit, ...);
int gitlogl(Gitlog **logs, int n, char *commit, char **files);