diff options
Diffstat (limited to '')
-rwxr-xr-x | t/t6413-merge-crlf.sh | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/t/t6413-merge-crlf.sh b/t/t6413-merge-crlf.sh new file mode 100755 index 0000000..b4f4a31 --- /dev/null +++ b/t/t6413-merge-crlf.sh @@ -0,0 +1,48 @@ +#!/bin/sh + +test_description='merge conflict in crlf repo + + b---M + / / + initial---a + +' + +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + +TEST_PASSES_SANITIZE_LEAK=true +. ./test-lib.sh + +test_expect_success setup ' + git config core.autocrlf true && + echo foo | append_cr >file && + git add file && + git commit -m "Initial" && + git tag initial && + git branch side && + echo line from a | append_cr >file && + git commit -m "add line from a" file && + git tag a && + git checkout side && + echo line from b | append_cr >file && + git commit -m "add line from b" file && + git tag b && + git checkout main +' + +test_expect_success 'Check "ours" is CRLF' ' + git reset --hard initial && + git merge side -s ours && + cat file | remove_cr | append_cr >file.temp && + test_cmp file file.temp +' + +test_expect_success 'Check that conflict file is CRLF' ' + git reset --hard a && + test_must_fail git merge side && + cat file | remove_cr | append_cr >file.temp && + test_cmp file file.temp +' + +test_done |