On Sat, Nov 15, 2014 at 01:38:36AM +0600, Alex Kuleshov wrote: > > Yeah, I'd agree it is a little unexpected to expand here. The "~" is > > mostly a shell thing, and doing: > > > > GIT_CONFIG=~/.gitconfig git config --list > > > > from the shell generally works, because the shell will expand the "~" > > before it even hits git. If you're not using a shell to set the > > variable, you probably should be pre-expanding it yourself. > > Yes, you're right here, but i put GIT_CONFIG=~/.gitconfig to my .bashrc > and it doesn't work so. Weird. It seems to work fine for me (though I admit I only did a pretty cursory test). > > Probably the right place would be the if/else chain around > > builtin/config.c:514, where we convert a relative path into an absolute > > one. But I'm not convinced it's a good thing to be doing in the first > > place. > > > What if we'll put path expanding right after getting value of file path, > after given_config_source.file = getenv(CONFIG_ENVIRONMENT); at 451? That is a good place to put it if you want to impact $GIT_CONFIG but not "--file". I am not sure if that is sensible. But then, I am not sure that I am convinced that we should be making any change at all. -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html