git-config-set: add more options

... namely

--replace-all, to replace any amount of matching lines, not just 0 or 1,
--get, to get the value of one key,
--get-all, the multivar version of --get, and
--unset-all, which deletes all matching lines from .git/config

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Johannes Schindelin
2005-11-20 06:52:22 +01:00
committed by Junio C Hamano
parent 7b5d895da6
commit 4ddba79db7
5 changed files with 259 additions and 62 deletions

View File

@ -192,7 +192,6 @@ extern int diff_rename_limit_default;
/* Return a statically allocated filename matching the sha1 signature */
extern char *mkpath(const char *fmt, ...) __attribute__((format (printf, 1, 2)));
extern char *enter_repo(char *path, int strict);
extern char *git_path(const char *fmt, ...) __attribute__((format (printf, 1, 2)));
extern char *sha1_file_name(const unsigned char *sha1);
extern char *sha1_pack_name(const unsigned char *sha1);
@ -388,7 +387,7 @@ extern int git_config(config_fn_t fn);
extern int git_config_int(const char *, const char *);
extern int git_config_bool(const char *, const char *);
extern int git_config_set(const char *, const char *);
extern int git_config_set_multivar(const char *, const char *, const char *);
extern int git_config_set_multivar(const char *, const char *, const char *, int);
#define MAX_GITNAME (1000)
extern char git_default_email[MAX_GITNAME];