 0e218f91c2
			
		
	
	0e218f91c2
	
	
	
		
			
			Git for Windows ships with its own Perl interpreter, and insists on using it, so it will most likely wreak havoc if PERL5LIB is set before launching Git. Let's just unset that environment variables when spawning processes. To make this feature extensible (and overrideable), there is a new config setting `core.unsetenvvars` that allows specifying a comma-separated list of names to unset before spawning processes. Reported by Gabriel Fuhrmann. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
		
			
				
	
	
		
			31 lines
		
	
	
		
			621 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			621 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| test_description='test the Windows-only core.unsetenvvars setting'
 | |
| 
 | |
| . ./test-lib.sh
 | |
| 
 | |
| if ! test_have_prereq MINGW
 | |
| then
 | |
| 	skip_all='skipping Windows-specific tests'
 | |
| 	test_done
 | |
| fi
 | |
| 
 | |
| test_expect_success 'setup' '
 | |
| 	mkdir -p "$TRASH_DIRECTORY/.git/hooks" &&
 | |
| 	write_script "$TRASH_DIRECTORY/.git/hooks/pre-commit" <<-\EOF
 | |
| 	echo $HOBBES >&2
 | |
| 	EOF
 | |
| '
 | |
| 
 | |
| test_expect_success 'core.unsetenvvars works' '
 | |
| 	HOBBES=Calvin &&
 | |
| 	export HOBBES &&
 | |
| 	git commit --allow-empty -m with 2>err &&
 | |
| 	grep Calvin err &&
 | |
| 	git -c core.unsetenvvars=FINDUS,HOBBES,CALVIN \
 | |
| 		commit --allow-empty -m without 2>err &&
 | |
| 	! grep Calvin err
 | |
| '
 | |
| 
 | |
| test_done
 |