(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: {(SQ <'combined and merge diff handle binary files and textconv'>)} spids: [4] ) ] spids: [4] ) (C {(.)} {(./test-lib.sh)}) (C {(test_expect_success)} {(SQ <'setup binary merge conflict'>)} { (SQ <'\n'> <'\techo oneQ1 | q_to_nul >binary &&\n'> <'\tgit add binary &&\n'> <'\tgit commit -m one &&\n'> <'\techo twoQ2 | q_to_nul >binary &&\n'> <'\tgit commit -a -m two &&\n'> <'\tgit checkout -b branch-binary HEAD^ &&\n'> <'\techo threeQ3 | q_to_nul >binary &&\n'> <'\tgit commit -a -m three &&\n'> <'\ttest_must_fail git merge master &&\n'> <'\techo resolvedQhooray | q_to_nul >binary &&\n'> <'\tgit commit -a -m resolved\n'> ) } ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect)} spids:[38]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('resolved\n') ('\n') ('diff --git a/binary b/binary\n') ('index 7ea6ded..9563691 100644\n') ('Binary files a/binary and b/binary differ\n') ('resolved\n') ('\n') ('diff --git a/binary b/binary\n') ('index 6197570..9563691 100644\n') ('Binary files a/binary and b/binary differ\n') } do_expansion: False here_end: EOF was_filled: T spids: [41] ) ] ) (C {(test_expect_success)} {(SQ <'diff -m indicates binary-ness'>)} {(SQ <'\n'> <'\tgit show --format=%s -m >actual &&\n'> <'\ttest_cmp expect actual\n'>)} ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect)} spids:[61]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('resolved\n') ('\n') ('diff --combined binary\n') ('index 7ea6ded,6197570..9563691\n') ('Binary files differ\n') } do_expansion: False here_end: EOF was_filled: T spids: [64] ) ] ) (C {(test_expect_success)} {(SQ <'diff -c indicates binary-ness'>)} {(SQ <'\n'> <'\tgit show --format=%s -c >actual &&\n'> <'\ttest_cmp expect actual\n'>)} ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect)} spids:[84]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('resolved\n') ('\n') ('diff --cc binary\n') ('index 7ea6ded,6197570..9563691\n') ('Binary files differ\n') } do_expansion: False here_end: EOF was_filled: T spids: [87] ) ] ) (C {(test_expect_success)} {(SQ <'diff --cc indicates binary-ness'>)} {(SQ <'\n'> <'\tgit show --format=%s --cc >actual &&\n'> <'\ttest_cmp expect actual\n'>)} ) (C {(test_expect_success)} {(SQ <'setup non-binary with binary attribute'>)} { (SQ <'\n'> <'\tgit checkout master &&\n'> <'\ttest_commit one text &&\n'> <'\ttest_commit two text &&\n'> <'\tgit checkout -b branch-text HEAD^ &&\n'> <'\ttest_commit three text &&\n'> <'\ttest_must_fail git merge master &&\n'> <'\ttest_commit resolved text &&\n'> <'\techo text -diff >.gitattributes\n'> ) } ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect)} spids:[126]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('resolved\n') ('\n') ('diff --git a/text b/text\n') ('index 2bdf67a..2ab19ae 100644\n') ('Binary files a/text and b/text differ\n') ('resolved\n') ('\n') ('diff --git a/text b/text\n') ('index f719efd..2ab19ae 100644\n') ('Binary files a/text and b/text differ\n') } do_expansion: False here_end: EOF was_filled: T spids: [129] ) ] ) (C {(test_expect_success)} {(SQ <'diff -m respects binary attribute'>)} {(SQ <'\n'> <'\tgit show --format=%s -m >actual &&\n'> <'\ttest_cmp expect actual\n'>)} ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect)} spids:[149]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('resolved\n') ('\n') ('diff --combined text\n') ('index 2bdf67a,f719efd..2ab19ae\n') ('Binary files differ\n') } do_expansion: False here_end: EOF was_filled: T spids: [152] ) ] ) (C {(test_expect_success)} {(SQ <'diff -c respects binary attribute'>)} {(SQ <'\n'> <'\tgit show --format=%s -c >actual &&\n'> <'\ttest_cmp expect actual\n'>)} ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect)} spids:[172]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('resolved\n') ('\n') ('diff --cc text\n') ('index 2bdf67a,f719efd..2ab19ae\n') ('Binary files differ\n') } do_expansion: False here_end: EOF was_filled: T spids: [175] ) ] ) (C {(test_expect_success)} {(SQ <'diff --cc respects binary attribute'>)} {(SQ <'\n'> <'\tgit show --format=%s --cc >actual &&\n'> <'\ttest_cmp expect actual\n'>)} ) (C {(test_expect_success)} {(SQ <'setup textconv attribute'>)} { (SQ <'\n'> <'\techo "text diff=upcase" >.gitattributes &&\n'> <'\tgit config diff.upcase.textconv "tr a-z A-Z <"\n'> ) } ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect)} spids:[208]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('resolved\n') ('\n') ('diff --git a/text b/text\n') ('index 2bdf67a..2ab19ae 100644\n') ('--- a/text\n') ('+++ b/text\n') ('@@ -1 +1 @@\n') ('-THREE\n') ('+RESOLVED\n') ('resolved\n') ('\n') ('diff --git a/text b/text\n') ('index f719efd..2ab19ae 100644\n') ('--- a/text\n') ('+++ b/text\n') ('@@ -1 +1 @@\n') ('-TWO\n') ('+RESOLVED\n') } do_expansion: False here_end: EOF was_filled: T spids: [211] ) ] ) (C {(test_expect_success)} {(SQ <'diff -m respects textconv attribute'>)} {(SQ <'\n'> <'\tgit show --format=%s -m >actual &&\n'> <'\ttest_cmp expect actual\n'>)} ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect)} spids:[231]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('resolved\n') ('\n') ('diff --combined text\n') ('index 2bdf67a,f719efd..2ab19ae\n') ('--- a/text\n') ('+++ b/text\n') ('@@@ -1,1 -1,1 +1,1 @@@\n') ('- THREE\n') (' -TWO\n') ('++RESOLVED\n') } do_expansion: False here_end: EOF was_filled: T spids: [234] ) ] ) (C {(test_expect_success)} {(SQ <'diff -c respects textconv attribute'>)} {(SQ <'\n'> <'\tgit show --format=%s -c >actual &&\n'> <'\ttest_cmp expect actual\n'>)} ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect)} spids:[254]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('resolved\n') ('\n') ('diff --cc text\n') ('index 2bdf67a,f719efd..2ab19ae\n') ('--- a/text\n') ('+++ b/text\n') ('@@@ -1,1 -1,1 +1,1 @@@\n') ('- THREE\n') (' -TWO\n') ('++RESOLVED\n') } do_expansion: False here_end: EOF was_filled: T spids: [257] ) ] ) (C {(test_expect_success)} {(SQ <'diff --cc respects textconv attribute'>)} {(SQ <'\n'> <'\tgit show --format=%s --cc >actual &&\n'> <'\ttest_cmp expect actual\n'>)} ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect)} spids:[277]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('diff --combined text\n') ('index 2bdf67a,f719efd..2ab19ae\n') ('--- a/text\n') ('+++ b/text\n') ('@@@ -1,1 -1,1 +1,1 @@@\n') ('- three\n') (' -two\n') ('++resolved\n') } do_expansion: False here_end: EOF was_filled: T spids: [280] ) ] ) (C {(test_expect_success)} {(SQ <'diff-tree plumbing does not respect textconv'>)} { (SQ <'\n'> <'\tgit diff-tree HEAD -c -p >full &&\n'> <'\ttail -n +2 full >actual &&\n'> <'\ttest_cmp expect actual\n'> ) } ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect)} spids:[301]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('diff --cc text\n') ('index 2bdf67a,f719efd..0000000\n') ('--- a/text\n') ('+++ b/text\n') ('@@@ -1,1 -1,1 +1,5 @@@\n') ('++<<<<<<< HEAD\n') (' +THREE\n') ('++=======\n') ('+ TWO\n') ('++>>>>>>> MASTER\n') } do_expansion: False here_end: EOF was_filled: T spids: [304] ) ] ) (C {(test_expect_success)} {(SQ <'diff --cc respects textconv on worktree file'>)} { (SQ <'\n'> <'\tgit reset --hard HEAD^ &&\n'> <'\ttest_must_fail git merge master &&\n'> <'\tgit diff >actual &&\n'> <'\ttest_cmp expect actual\n'> ) } ) (C {(test_done)}) ] )