shithub: libgit

ref: 073882f6a2a8c065375b94dc77c59eb7d8b2091f
dir: /README/

View raw version
libgit

COMMANDS

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

/* git commands. files must be relative within repository. The last
   name must be nil. */
int gitcommit(char *msg, char* file, ...);
int gitadd(char* file, ...);
int gitrm(char* file, ...);


NOTES

gitrm and gitadd add files directly.
gitcommit calls "/bin/git/commit" under the hood.

initgit is called like that to allow for a future gitinit command
for initializing new repos.


EXAMPLE PROGRAM

void
main(int argc, char **argv)
{
	if (!initgit("/path/to/my/repo"))
		sysfatal("%r");
	
	gitadd("relative/path/to/file", "file2", "file3", nil);
	gitrm("relative/path/to/filerm", "filerm2", "filerm3", nil);
	gitcommit("commit message", "relative/path/to/file", "file2", "file3", "relative/path/to/filerm", "filerm2", filerm3", nil);
}