Add set_git_dir() function
With the function set_git_dir() you can reset the path that will be used for git_path(), git_dir() and friends. The responsibility to close files and throw away information from the old git_dir lies with the caller. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
e663674722
commit
d7ac12b25d
1
cache.h
1
cache.h
@ -214,6 +214,7 @@ extern char *get_object_directory(void);
|
||||
extern char *get_refs_directory(void);
|
||||
extern char *get_index_file(void);
|
||||
extern char *get_graft_file(void);
|
||||
extern int set_git_dir(const char *path);
|
||||
|
||||
#define ALTERNATE_DB_ENVIRONMENT "GIT_ALTERNATE_OBJECT_DIRECTORIES"
|
||||
|
||||
|
@ -107,3 +107,11 @@ char *get_graft_file(void)
|
||||
setup_git_env();
|
||||
return git_graft_file;
|
||||
}
|
||||
|
||||
int set_git_dir(const char *path)
|
||||
{
|
||||
if (setenv(GIT_DIR_ENVIRONMENT, path, 1))
|
||||
return error("Could not set GIT_DIR to '%s'", path);
|
||||
setup_git_env();
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user