Skip to content

Commit 476b060

Browse files
committed
Merge pull request #2358 from dscho/reconcile-system-config-and-programdata-config
Make `git config --system` work like you think it should on Windows
2 parents 70f00f2 + 872fad7 commit 476b060

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

config.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1662,9 +1662,11 @@ static int git_config_from_blob_ref(config_fn_t fn,
16621662

16631663
const char *git_etc_gitconfig(void)
16641664
{
1665-
static const char *system_wide;
1666-
if (!system_wide)
1665+
static char *system_wide;
1666+
if (!system_wide) {
16671667
system_wide = system_path(ETC_GITCONFIG);
1668+
normalize_path_copy(system_wide, system_wide);
1669+
}
16681670
return system_wide;
16691671
}
16701672

config.mak.uname

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -424,6 +424,11 @@ ifeq ($(uname_S),Windows)
424424
NO_POSIX_GOODIES = UnfortunatelyYes
425425
NATIVE_CRLF = YesPlease
426426
DEFAULT_HELP_FORMAT = html
427+
ifeq (/mingw64,$(subst 32,64,$(prefix)))
428+
# Move system config into top-level /etc/
429+
ETC_GITCONFIG = ../etc/gitconfig
430+
ETC_GITATTRIBUTES = ../etc/gitattributes
431+
endif
427432

428433
CC = compat/vcbuild/scripts/clink.pl
429434
AR = compat/vcbuild/scripts/lib.pl
@@ -670,6 +675,11 @@ else
670675
NO_LIBPCRE1_JIT = UnfortunatelyYes
671676
NO_CURL =
672677
USE_NED_ALLOCATOR = YesPlease
678+
ifeq (/mingw64,$(subst 32,64,$(prefix)))
679+
# Move system config into top-level /etc/
680+
ETC_GITCONFIG = ../etc/gitconfig
681+
ETC_GITATTRIBUTES = ../etc/gitattributes
682+
endif
673683
else
674684
COMPAT_CFLAGS += -D__USE_MINGW_ANSI_STDIO
675685
NO_CURL = YesPlease

0 commit comments

Comments
 (0)