versioned_graph/commit

more w.i.p. on documentation

authorJacco van Ossenbruggen
Mon Jun 23 11:03:34 2014 +0200
committerJacco van Ossenbruggen
Mon Jun 23 11:03:34 2014 +0200
commit92fcba9ece6a2d343c6a202d518715ea749a77bf
tree6ca54131c64de4ef1fdf51411066dc387edd6d76
parent74721f22ab043d204ce5bb35dd6d0e0e60e15e46
Diff style: patch stat
diff --git a/lib/gv_git_io.pl b/lib/gv_git_io.pl
index 52c3542..f9e8062 100644
--- a/lib/gv_git_io.pl
+++ b/lib/gv_git_io.pl
@@ -10,10 +10,17 @@
 	    gv_parse_commit/2
 	  ]).
 
+/* Implement low level (plumbing) git commands using the SWI Prolog git library.
+*/
+
 :- use_module(library(git)).
 :- use_module(parse_git_objects).
 
-
+%%	gv_init_git(+Options) is semidet.
+%
+%	Init git directory specified in Options as a bare git
+%	repository. Succeeds silently as no-op when directory already
+%	exists.
 gv_init_git(Options) :-
 	option(directory(Dir), Options),
 	(   exists_directory(Dir)
@@ -22,6 +29,17 @@ gv_init_git(Options) :-
 	    catch(git(['init', '--bare'],[directory(Dir)]), _, fail)
 	).
 
+%%	gv_parse_tree(+Hash, TreeObject) is semidet.
+%
+%	Read tree object from git repository into a TreeObject term.
+gv_parse_tree(Hash, TreeObject):-
+	gv_git_cat_file(Hash, Codes),
+	phrase(tree(TreeObject), Codes).
+
+gv_parse_commit(Hash, CommitObject):-
+	gv_git_cat_file(Hash, Codes),
+	phrase(commit(CommitObject), Codes).
+
 gv_current_branch_git(Ref) :-
 	setting(graph_version:gv_git_dir, Dir),
 	catch(git(['symbolic-ref', 'HEAD'],[directory(Dir), output(OutCodes)]), _, fail),!,
@@ -86,10 +104,3 @@ gv_git_cat_file(Hash, Codes) :-
 	      _,
 	      fail).
 
-gv_parse_tree(Hash, TreeObject):-
-	gv_git_cat_file(Hash, Codes),
-	phrase(tree(TreeObject), Codes).
-
-gv_parse_commit(Hash, CommitObject):-
-	gv_git_cat_file(Hash, Codes),
-	phrase(commit(CommitObject), Codes).
diff --git a/lib/gv_git_objects.pl b/lib/gv_git_objects.pl
index ff5f03f..ec92740 100644
--- a/lib/gv_git_objects.pl
+++ b/lib/gv_git_objects.pl
@@ -29,7 +29,7 @@
 :- rdf_meta
 	tree_triple_to_git(t,o).
 
-%%	gv_store_graph(+Options, +Graph, -Blob) is det.
+%%	gv_create_blob_object(+Options, +Graph, -Blob) is det.
 %
 %	Snapshot of Graph is stored in Blob.
 
@@ -82,7 +82,21 @@ gv_create_tree_object(Triples, TreeURI, Options) :-
 	->  gv_store_git_object(Hash, TreeContent, [type(tree)|Options])
 	;   true
 	).
-
+%%	gv_create_commit_object(+T, +P, +C, +M, -Commit, +O) is semidet.
+%
+%	Create a Commit object with the mandatory following properties:
+%	* tree(T)
+%	* parent(P)
+%	* committer_url(C)
+%	* comment(M).
+%
+%
+%	Optional object in Options, along with the default values
+%	* committer_email(mailto:no_email@example.com)
+%	* committer_date(now)
+%	* author_url(committer_url)
+%	* author_email(committer_email)
+%	* author_date(now)
 
 gv_create_commit_object(Tree, Parent, CommitterURL, Comment, Commit, Options) :-
 	setting(graph_version:gv_commit_store, DefaultStoreMode),
@@ -233,7 +247,7 @@ git_tree_pair_to_triple([hash(H),name(Senc)], rdf(Sdec,P,O)) :-
 	gv_hash_uri(H,O).
 
 
-%%	gv_tree_store(+Tree, -Triples) is semidet.
+%%	gv_tree_triples(+Tree, -Triples) is semidet.
 %
 %	Unify Triples with the content of tree object Tree.
 %	If Tree is a named graph in the triple store, just
@@ -254,6 +268,9 @@ gv_tree_triples(Tree, Triples) :-
 	gv_parse_tree(Hash, TreeObject),
 	maplist(git_tree_pair_to_triple, TreeObject, Triples).
 
+%%	gv_init_rdf(+Ref, +Options) is det.
+%
+%	Make sure the current branch in the head graph points to Ref.
 
 gv_init_rdf(Ref, Options) :-
 	option(gv_refs_prefix(Refs), Options),