index 51cf86a5843acc3b6bc3d8c4be9fec0fdd0a0df5..4127031910c83987c8ef394e3711942e2db8a8f9 100644 (file)
--- a/var.c
+++ b/var.c
* Copyright (C) Eric Biederman, 2005
*/
#include "cache.h"
-#include <stdio.h>
-#include <errno.h>
-#include <string.h>
static const char var_usage[] = "git-var [-l | <variable>]";
struct git_var {
const char *name;
- char *(*read)(void);
+ const char *(*read)(int);
};
static struct git_var git_vars[] = {
{ "GIT_COMMITTER_IDENT", git_committer_info },
{
struct git_var *ptr;
for(ptr = git_vars; ptr->read; ptr++) {
- printf("%s=%s\n", ptr->name, ptr->read());
+ printf("%s=%s\n", ptr->name, ptr->read(0));
}
}
val = NULL;
for(ptr = git_vars; ptr->read; ptr++) {
if (strcmp(var, ptr->name) == 0) {
- val = ptr->read();
+ val = ptr->read(1);
break;
}
}
if (argc != 2) {
usage(var_usage);
}
- setup_ident();
+
+ setup_git_directory();
val = NULL;
if (strcmp(argv[1], "-l") == 0) {
val = read_var(argv[1]);
if (!val)
usage(var_usage);
-
+
printf("%s\n", val);
-
+
return 0;
}