Jonathan's patch would indeed be nice. In cgit, we are forced to do
ugly things like this:
/* Do not look in /etc/ for gitconfig and gitattributes. */
setenv("GIT_CONFIG_NOSYSTEM", "1", 1);
setenv("GIT_ATTR_NOSYSTEM", "1", 1);
/* We unset HOME and XDG_CONFIG_HOME before calling the git
setup function
* so that we don't make unneccessary filesystem accesses. */
user_home = getenv("HOME");
xdg_home = getenv("XDG_CONFIG_HOME");
unsetenv("HOME");
unsetenv("XDG_CONFIG_HOME");
/* Setup the git directory and initialize the notes system.
Both of these
* load local configuration from the git repository, so we do
them both while
* the HOME variables are unset. */
setup_git_directory_gently(&nongit);
init_display_notes(NULL);
/* We restore the unset variables afterward. */
if (user_home)
setenv("HOME", user_home, 1);
if (xdg_home)
setenv("XDG_CONFIG_HOME", xdg_home, 1);
A big nasty guard around the git setup function, so that we don't error out.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html