Staging
v0.5.1
https://github.com/git/git
Revision 297ca895a27a6bbdb7906371d533f72a12ad25b2 authored by Junio C Hamano on 20 January 2022, 23:25:38 UTC, committed by Junio C Hamano on 20 January 2022, 23:25:38 UTC
"git branch -h" incorrectly said "--track[=direct|inherit]",
implying that "--trackinherit" is a valid option, which has been
corrected.
source: <3de40324bea6a1dd9bca2654721471e3809e87d8.1642538935.git.steadmon@google.com>
source: <c3c26192-aee9-185a-e559-b8735139e49c@web.de>

* js/branch-track-inherit:
  branch,checkout: fix --track documentation
2 parent s 50b2d72 + 6327f0e
Raw File
Tip revision: 297ca895a27a6bbdb7906371d533f72a12ad25b2 authored by Junio C Hamano on 20 January 2022, 23:25:38 UTC
Merge branch 'js/branch-track-inherit'
Tip revision: 297ca89
t4138-apply-ws-expansion.sh
#!/bin/sh
#
# Copyright (C) 2015 Kyle J. McKay
#

test_description='git apply test patches with whitespace expansion.'

. ./test-lib.sh

test_expect_success setup '
	#
	## create test-N, patchN.patch, expect-N files
	#

	# test 1
	printf "\t%s\n" 1 2 3 4 5 6 >before &&
	printf "\t%s\n" 1 2 3 >after &&
	printf "%64s\n" a b c >>after &&
	printf "\t%s\n" 4 5 6 >>after &&
	test_expect_code 1 git diff --no-index before after >patch1.patch.raw &&
	sed -e "s/before/test-1/" -e "s/after/test-1/" patch1.patch.raw >patch1.patch &&
	printf "%64s\n" 1 2 3 4 5 6 >test-1 &&
	printf "%64s\n" 1 2 3 a b c 4 5 6 >expect-1 &&

	# test 2
	printf "\t%s\n" a b c d e f >before &&
	printf "\t%s\n" a b c >after &&
	n=10 &&
	x=1 &&
	while test $x -lt $n
	do
		printf "%63s%d\n" "" $x >>after &&
		x=$(( $x + 1 )) || return 1
	done &&
	printf "\t%s\n" d e f >>after &&
	test_expect_code 1 git diff --no-index before after >patch2.patch.raw &&
	sed -e "s/before/test-2/" -e "s/after/test-2/" patch2.patch.raw >patch2.patch &&
	printf "%64s\n" a b c d e f >test-2 &&
	printf "%64s\n" a b c >expect-2 &&
	x=1 &&
	while test $x -lt $n
	do
		printf "%63s%d\n" "" $x >>expect-2 &&
		x=$(( $x + 1 )) || return 1
	done &&
	printf "%64s\n" d e f >>expect-2 &&

	# test 3
	printf "\t%s\n" a b c d e f >before &&
	printf "\t%s\n" a b c >after &&
	n=100 &&
	x=0 &&
	while test $x -lt $n
	do
		printf "%63s%02d\n" "" $x >>after &&
		x=$(( $x + 1 )) || return 1
	done &&
	printf "\t%s\n" d e f >>after &&
	test_expect_code 1 git diff --no-index before after >patch3.patch.raw &&
	sed -e "s/before/test-3/" -e "s/after/test-3/" patch3.patch.raw >patch3.patch &&
	printf "%64s\n" a b c d e f >test-3 &&
	printf "%64s\n" a b c >expect-3 &&
	x=0 &&
	while test $x -lt $n
	do
		printf "%63s%02d\n" "" $x >>expect-3 &&
		x=$(( $x + 1 )) || return 1
	done &&
	printf "%64s\n" d e f >>expect-3 &&

	# test 4
	>before &&
	x=0 &&
	while test $x -lt 50
	do
		printf "\t%02d\n" $x >>before &&
		x=$(( $x + 1 )) || return 1
	done &&
	cat before >after &&
	printf "%64s\n" a b c >>after &&
	while test $x -lt 100
	do
		printf "\t%02d\n" $x >>before &&
		printf "\t%02d\n" $x >>after &&
		x=$(( $x + 1 )) || return 1
	done &&
	test_expect_code 1 git diff --no-index before after >patch4.patch.raw &&
	sed -e "s/before/test-4/" -e "s/after/test-4/" patch4.patch.raw >patch4.patch &&
	>test-4 &&
	x=0 &&
	while test $x -lt 50
	do
		printf "%63s%02d\n" "" $x >>test-4 &&
		x=$(( $x + 1 )) || return 1
	done &&
	cat test-4 >expect-4 &&
	printf "%64s\n" a b c >>expect-4 &&
	while test $x -lt 100
	do
		printf "%63s%02d\n" "" $x >>test-4 &&
		printf "%63s%02d\n" "" $x >>expect-4 &&
		x=$(( $x + 1 )) || return 1
	done &&

	git config core.whitespace tab-in-indent,tabwidth=63 &&
	git config apply.whitespace fix

'

# Note that `patch` can successfully apply all patches when run
# with the --ignore-whitespace option.

for t in 1 2 3 4
do
	test_expect_success 'apply with ws expansion (t=$t)' '
		git apply patch$t.patch &&
		test_cmp expect-$t test-$t
	'
done

test_done
back to top