summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorCarson Howard <carsonh@axosoft.com>2017-10-16 16:46:19 -0700
committerCarson Howard <tylerw+systemtest@axosoft.com>2018-03-27 07:18:31 -0700
commit30e919c4272f9828ab1d5cdac30234452ac9afcc (patch)
tree8fd2b603c6ed10affae131d90851f4c490be2fa1 /examples
parent217add94008135035f19a7076ba20de4338d8220 (diff)
downloadlibgit2-30e919c4272f9828ab1d5cdac30234452ac9afcc.tar.gz
examples: ls-files: list files
Diffstat (limited to 'examples')
-rw-r--r--examples/ls-files.c37
1 files changed, 37 insertions, 0 deletions
diff --git a/examples/ls-files.c b/examples/ls-files.c
new file mode 100644
index 000000000..c5201bbe6
--- /dev/null
+++ b/examples/ls-files.c
@@ -0,0 +1,37 @@
+#include <common.h>
+
+typedef struct ls_files_state {
+ git_repository *repo;
+ git_index *index;
+ char **files;
+ size_t num_entries;
+} ls_files;
+
+void create_ls_files(ls_files **ls);
+
+int main(int argc, char[] *argv) {
+ ls_files *ls;
+ git_index_entry *entry;
+ size_t i;
+
+ git_libgit2_init();
+
+ ls = git__malloc(sizeof(ls_files));
+
+ // TODO err
+ git_repository_open_ext(&ls->repo, ".", 0, NULL);
+
+ // TODO err
+ git_repository_index__weakptr(&ls->index, ls->repo);
+
+
+ git_vector_foreach(&ls->index->entries, i, entry) {
+ printf("%s\n", entry->path);
+ }
+
+ git_repository_free(ls->repo);
+ git__free(ls);
+ git_libgit2_shutdown();
+
+ return 0;
+}