mirror of
https://github.com/git/git.git
synced 2024-10-30 22:07:53 +01:00
Merge branch 'sc/difftool-skip'
* sc/difftool-skip: t7800: avoid arithmetic expansion notation git-difftool: allow skipping file by typing 'n' at prompt
This commit is contained in:
commit
1ad4b17b06
2 changed files with 48 additions and 4 deletions
|
@ -43,12 +43,15 @@ launch_merge_tool () {
|
|||
printf "\nViewing: '$MERGED'\n"
|
||||
if use_ext_cmd
|
||||
then
|
||||
printf "Hit return to launch '%s': " \
|
||||
printf "Launch '%s' [Y/n]: " \
|
||||
"$GIT_DIFFTOOL_EXTCMD"
|
||||
else
|
||||
printf "Hit return to launch '%s': " "$merge_tool"
|
||||
printf "Launch '%s' [Y/n]: " "$merge_tool"
|
||||
fi
|
||||
if read ans && test "$ans" = n
|
||||
then
|
||||
return
|
||||
fi
|
||||
read ans
|
||||
fi
|
||||
|
||||
if use_ext_cmd
|
||||
|
|
|
@ -38,7 +38,17 @@ restore_test_defaults()
|
|||
prompt_given()
|
||||
{
|
||||
prompt="$1"
|
||||
test "$prompt" = "Hit return to launch 'test-tool': branch"
|
||||
test "$prompt" = "Launch 'test-tool' [Y/n]: branch"
|
||||
}
|
||||
|
||||
stdin_contains()
|
||||
{
|
||||
grep >/dev/null "$1"
|
||||
}
|
||||
|
||||
stdin_doesnot_contain()
|
||||
{
|
||||
! stdin_contains "$1"
|
||||
}
|
||||
|
||||
# Create a file on master and change it on branch
|
||||
|
@ -265,4 +275,35 @@ test_expect_success PERL 'difftool --extcmd cat arg2' '
|
|||
test "$diff" = branch
|
||||
'
|
||||
|
||||
# Create a second file on master and a different version on branch
|
||||
test_expect_success PERL 'setup with 2 files different' '
|
||||
echo m2 >file2 &&
|
||||
git add file2 &&
|
||||
git commit -m "added file2" &&
|
||||
|
||||
git checkout branch &&
|
||||
echo br2 >file2 &&
|
||||
git add file2 &&
|
||||
git commit -a -m "branch changed file2" &&
|
||||
git checkout master
|
||||
'
|
||||
|
||||
test_expect_success PERL 'say no to the first file' '
|
||||
diff=$( (echo n; echo) | git difftool -x cat branch ) &&
|
||||
|
||||
echo "$diff" | stdin_contains m2 &&
|
||||
echo "$diff" | stdin_contains br2 &&
|
||||
echo "$diff" | stdin_doesnot_contain master &&
|
||||
echo "$diff" | stdin_doesnot_contain branch
|
||||
'
|
||||
|
||||
test_expect_success PERL 'say no to the second file' '
|
||||
diff=$( (echo; echo n) | git difftool -x cat branch ) &&
|
||||
|
||||
echo "$diff" | stdin_contains master &&
|
||||
echo "$diff" | stdin_contains branch &&
|
||||
echo "$diff" | stdin_doesnot_contain m2 &&
|
||||
echo "$diff" | stdin_doesnot_contain br2
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
Loading…
Reference in a new issue