(command.CommandList
  children: [
    (command.ShAssignment
      left: <Id.Lit_VarLike 'test_description='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'test_description='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'test_description='> name:test_description)
          op: assign_op.Equal
          rhs: {(DQ <'recursive merge corner cases w/ renames but not criss-crosses'>)}
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <.>
      more_env: []
      words: [{<.>} {<'./test-lib.sh'>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup rename/delete + untracked file'>)}
        {
          (SQ <'\n'> <'\techo "A pretty inscription" >ring &&\n'> <'\tgit add ring &&\n'> 
            <'\ttest_tick &&\n'> <'\tgit commit -m beginning &&\n'> <'\n'> <'\tgit branch people &&\n'> 
            <'\tgit checkout -b rename-the-ring &&\n'> <'\tgit mv ring one-ring-to-rule-them-all &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m fullname &&\n'> 
            <'\n'> <'\tgit checkout people &&\n'> <'\tgit rm ring &&\n'> <'\techo gollum >owner &&\n'> 
            <'\tgit add owner &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m track-people-instead-of-objects &&\n'> 
            <'\techo "Myyy PRECIOUSSS" >ring\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(DQ <'Does git preserve Gollum\'s precious artifact?'>)}
        {
          (SQ <'\n'> <'\ttest_must_fail git merge -s recursive rename-the-ring &&\n'> <'\n'> 
            <'\t# Make sure git did not delete an untracked file\n'> <'\ttest -f ring\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup rename/modify/add-source conflict'>)}
        {
          (SQ <'\n'> <'\tgit rm -rf . &&\n'> <'\tgit clean -fdqx &&\n'> <'\trm -rf .git &&\n'> 
            <'\tgit init &&\n'> <'\n'> <'\tprintf "1\\n2\\n3\\n4\\n5\\n6\\n7\\n" >a &&\n'> <'\tgit add a &&\n'> 
            <'\tgit commit -m A &&\n'> <'\tgit tag A &&\n'> <'\n'> <'\tgit checkout -b B A &&\n'> <'\techo 8 >>a &&\n'> <'\tgit add a &&\n'> 
            <'\tgit commit -m B &&\n'> <'\n'> <'\tgit checkout -b C A &&\n'> <'\tgit mv a b &&\n'> 
            <'\techo something completely different >a &&\n'> <'\tgit add a &&\n'> <'\tgit commit -m C\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_failure>
      more_env: []
      words: [
        {<test_expect_failure>}
        {(SQ <'rename/modify/add-source conflict resolvable'>)}
        {
          (SQ <'\n'> <'\tgit checkout B^0 &&\n'> <'\n'> <'\tgit merge -s recursive C^0 &&\n'> <'\n'> 
            <'\ttest $(git rev-parse B:a) = $(git rev-parse b) &&\n'> <'\ttest $(git rev-parse C:a) = $(git rev-parse a)\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup resolvable conflict missed if rename missed'>)}
        {
          (SQ <'\n'> <'\tgit rm -rf . &&\n'> <'\tgit clean -fdqx &&\n'> <'\trm -rf .git &&\n'> 
            <'\tgit init &&\n'> <'\n'> <'\tprintf "1\\n2\\n3\\n4\\n5\\n" >a &&\n'> <'\techo foo >b &&\n'> <'\tgit add a b &&\n'> 
            <'\tgit commit -m A &&\n'> <'\tgit tag A &&\n'> <'\n'> <'\tgit checkout -b B A &&\n'> <'\tgit mv a c &&\n'> 
            <'\techo "Completely different content" >a &&\n'> <'\tgit add a &&\n'> <'\tgit commit -m B &&\n'> <'\n'> <'\tgit checkout -b C A &&\n'> 
            <'\techo 6 >>a &&\n'> <'\tgit add a &&\n'> <'\tgit commit -m C\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_failure>
      more_env: []
      words: [
        {<test_expect_failure>}
        {(SQ <'conflict caused if rename not detected'>)}
        {
          (SQ <'\n'> <'\tgit checkout -q C^0 &&\n'> <'\tgit merge -s recursive B^0 &&\n'> <'\n'> 
            <'\ttest 3 -eq $(git ls-files -s | wc -l) &&\n'> <'\ttest 0 -eq $(git ls-files -u | wc -l) &&\n'> <'\ttest 0 -eq $(git ls-files -o | wc -l) &&\n'> 
            <'\n'> <'\ttest_line_count = 6 c &&\n'> <'\ttest $(git rev-parse HEAD:a) = $(git rev-parse B:a) &&\n'> 
            <'\ttest $(git rev-parse HEAD:b) = $(git rev-parse A:b)\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup conflict resolved wrong if rename missed'>)}
        {
          (SQ <'\n'> <'\tgit reset --hard &&\n'> <'\tgit clean -f &&\n'> <'\n'> 
            <'\tgit checkout -b D A &&\n'> <'\techo 7 >>a &&\n'> <'\tgit add a &&\n'> <'\tgit mv a c &&\n'> 
            <'\techo "Completely different content" >a &&\n'> <'\tgit add a &&\n'> <'\tgit commit -m D &&\n'> <'\n'> <'\tgit checkout -b E A &&\n'> <'\tgit rm a &&\n'> 
            <'\techo "Completely different content" >>a &&\n'> <'\tgit add a &&\n'> <'\tgit commit -m E\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_failure>
      more_env: []
      words: [
        {<test_expect_failure>}
        {(SQ <'missed conflict if rename not detected'>)}
        {(SQ <'\n'> <'\tgit checkout -q E^0 &&\n'> <'\ttest_must_fail git merge -s recursive D^0\n'>)}
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup undetected rename/add-source causes data loss'>)}
        {
          (SQ <'\n'> <'\tgit rm -rf . &&\n'> <'\tgit clean -fdqx &&\n'> <'\trm -rf .git &&\n'> 
            <'\tgit init &&\n'> <'\n'> <'\tprintf "1\\n2\\n3\\n4\\n5\\n" >a &&\n'> <'\tgit add a &&\n'> <'\tgit commit -m A &&\n'> 
            <'\tgit tag A &&\n'> <'\n'> <'\tgit checkout -b B A &&\n'> <'\tgit mv a b &&\n'> <'\tgit commit -m B &&\n'> <'\n'> 
            <'\tgit checkout -b C A &&\n'> <'\tgit mv a b &&\n'> <'\techo foobar >a &&\n'> <'\tgit add a &&\n'> <'\tgit commit -m C\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_failure>
      more_env: []
      words: [
        {<test_expect_failure>}
        {(SQ <'detect rename/add-source and preserve all data'>)}
        {
          (SQ <'\n'> <'\tgit checkout B^0 &&\n'> <'\n'> <'\tgit merge -s recursive C^0 &&\n'> <'\n'> 
            <'\ttest 2 -eq $(git ls-files -s | wc -l) &&\n'> <'\ttest 2 -eq $(git ls-files -u | wc -l) &&\n'> <'\ttest 0 -eq $(git ls-files -o | wc -l) &&\n'> 
            <'\n'> <'\ttest -f a &&\n'> <'\ttest -f b &&\n'> <'\n'> 
            <'\ttest $(git rev-parse HEAD:b) = $(git rev-parse A:a) &&\n'> <'\ttest $(git rev-parse HEAD:a) = $(git rev-parse C:a)\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_failure>
      more_env: []
      words: [
        {<test_expect_failure>}
        {(SQ <'detect rename/add-source and preserve all data, merge other way'>)}
        {
          (SQ <'\n'> <'\tgit checkout C^0 &&\n'> <'\n'> <'\tgit merge -s recursive B^0 &&\n'> <'\n'> 
            <'\ttest 2 -eq $(git ls-files -s | wc -l) &&\n'> <'\ttest 2 -eq $(git ls-files -u | wc -l) &&\n'> <'\ttest 0 -eq $(git ls-files -o | wc -l) &&\n'> 
            <'\n'> <'\ttest -f a &&\n'> <'\ttest -f b &&\n'> <'\n'> 
            <'\ttest $(git rev-parse HEAD:b) = $(git rev-parse A:a) &&\n'> <'\ttest $(git rev-parse HEAD:a) = $(git rev-parse C:a)\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup content merge + rename/directory conflict'>)}
        {
          (SQ <'\n'> <'\tgit rm -rf . &&\n'> <'\tgit clean -fdqx &&\n'> <'\trm -rf .git &&\n'> 
            <'\tgit init &&\n'> <'\n'> <'\tprintf "1\\n2\\n3\\n4\\n5\\n6\\n" >file &&\n'> <'\tgit add file &&\n'> <'\ttest_tick &&\n'> 
            <'\tgit commit -m base &&\n'> <'\tgit tag base &&\n'> <'\n'> <'\tgit checkout -b right &&\n'> <'\techo 7 >>file &&\n'> 
            <'\tmkdir newfile &&\n'> <'\techo junk >newfile/realfile &&\n'> <'\tgit add file newfile/realfile &&\n'> <'\ttest_tick &&\n'> 
            <'\tgit commit -m right &&\n'> <'\n'> <'\tgit checkout -b left-conflict base &&\n'> <'\techo 8 >>file &&\n'> <'\tgit add file &&\n'> 
            <'\tgit mv file newfile &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m left &&\n'> <'\n'> <'\tgit checkout -b left-clean base &&\n'> 
            <'\techo 0 >newfile &&\n'> <'\tcat file >>newfile &&\n'> <'\tgit add newfile &&\n'> <'\tgit rm file &&\n'> <'\ttest_tick &&\n'> 
            <'\tgit commit -m left\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'rename/directory conflict + clean content merge'>)}
        {
          (SQ <'\n'> <'\tgit reset --hard &&\n'> <'\tgit reset --hard &&\n'> <'\tgit clean -fdqx &&\n'> 
            <'\n'> <'\tgit checkout left-clean^0 &&\n'> <'\n'> <'\ttest_must_fail git merge -s recursive right^0 &&\n'> 
            <'\n'> <'\ttest 2 -eq $(git ls-files -s | wc -l) &&\n'> <'\ttest 1 -eq $(git ls-files -u | wc -l) &&\n'> 
            <'\ttest 1 -eq $(git ls-files -o | wc -l) &&\n'> <'\n'> <'\techo 0 >expect &&\n'> <'\tgit cat-file -p base:file >>expect &&\n'> 
            <'\techo 7 >>expect &&\n'> <'\ttest_cmp expect newfile~HEAD &&\n'> <'\n'> 
            <'\ttest $(git rev-parse :2:newfile) = $(git hash-object expect) &&\n'> <'\n'> <'\ttest -f newfile/realfile &&\n'> <'\ttest -f newfile~HEAD\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'rename/directory conflict + content merge conflict'>)}
        {
          (SQ <'\n'> <'\tgit reset --hard &&\n'> <'\tgit reset --hard &&\n'> <'\tgit clean -fdqx &&\n'> 
            <'\n'> <'\tgit checkout left-conflict^0 &&\n'> <'\n'> <'\ttest_must_fail git merge -s recursive right^0 &&\n'> 
            <'\n'> <'\ttest 4 -eq $(git ls-files -s | wc -l) &&\n'> <'\ttest 3 -eq $(git ls-files -u | wc -l) &&\n'> 
            <'\ttest 1 -eq $(git ls-files -o | wc -l) &&\n'> <'\n'> <'\tgit cat-file -p left-conflict:newfile >left &&\n'> 
            <'\tgit cat-file -p base:file    >base &&\n'> <'\tgit cat-file -p right:file   >right &&\n'> <'\ttest_must_fail git merge-file \\\n'> 
            <'\t\t-L "HEAD:newfile" \\\n'> <'\t\t-L "" \\\n'> <'\t\t-L "right^0:file" \\\n'> <'\t\tleft base right &&\n'> 
            <'\ttest_cmp left newfile~HEAD &&\n'> <'\n'> <'\ttest $(git rev-parse :1:newfile) = $(git rev-parse base:file) &&\n'> 
            <'\ttest $(git rev-parse :2:newfile) = $(git rev-parse left-conflict:newfile) &&\n'> <'\ttest $(git rev-parse :3:newfile) = $(git rev-parse right:file) &&\n'> <'\n'> 
            <'\ttest -f newfile/realfile &&\n'> <'\ttest -f newfile~HEAD\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup content merge + rename/directory conflict w/ disappearing dir'>)}
        {
          (SQ <'\n'> <'\tgit reset --hard &&\n'> <'\tgit rm -rf . &&\n'> <'\tgit clean -fdqx &&\n'> 
            <'\trm -rf .git &&\n'> <'\tgit init &&\n'> <'\n'> <'\tmkdir sub &&\n'> <'\tprintf "1\\n2\\n3\\n4\\n5\\n6\\n" >sub/file &&\n'> 
            <'\tgit add sub/file &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m base &&\n'> <'\tgit tag base &&\n'> <'\n'> 
            <'\tgit checkout -b right &&\n'> <'\techo 7 >>sub/file &&\n'> <'\tgit add sub/file &&\n'> <'\ttest_tick &&\n'> 
            <'\tgit commit -m right &&\n'> <'\n'> <'\tgit checkout -b left base &&\n'> <'\techo 0 >newfile &&\n'> <'\tcat sub/file >>newfile &&\n'> 
            <'\tgit rm sub/file &&\n'> <'\tmv newfile sub &&\n'> <'\tgit add sub &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m left\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'disappearing dir in rename/directory conflict handled'>)}
        {
          (SQ <'\n'> <'\tgit reset --hard &&\n'> <'\tgit clean -fdqx &&\n'> <'\n'> 
            <'\tgit checkout left^0 &&\n'> <'\n'> <'\tgit merge -s recursive right^0 &&\n'> <'\n'> <'\ttest 1 -eq $(git ls-files -s | wc -l) &&\n'> 
            <'\ttest 0 -eq $(git ls-files -u | wc -l) &&\n'> <'\ttest 0 -eq $(git ls-files -o | wc -l) &&\n'> <'\n'> <'\techo 0 >expect &&\n'> 
            <'\tgit cat-file -p base:sub/file >>expect &&\n'> <'\techo 7 >>expect &&\n'> <'\ttest_cmp expect sub &&\n'> <'\n'> <'\ttest -f sub\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup rename/rename (2to1) + modify/modify'>)}
        {
          (SQ <'\n'> <'\tgit rm -rf . &&\n'> <'\tgit clean -fdqx &&\n'> <'\trm -rf .git &&\n'> 
            <'\tgit init &&\n'> <'\n'> <'\tprintf "1\\n2\\n3\\n4\\n5\\n" >a &&\n'> <'\tprintf "5\\n4\\n3\\n2\\n1\\n" >b &&\n'> 
            <'\tgit add a b &&\n'> <'\tgit commit -m A &&\n'> <'\tgit tag A &&\n'> <'\n'> <'\tgit checkout -b B A &&\n'> 
            <'\tgit mv a c &&\n'> <'\techo 0 >>b &&\n'> <'\tgit add b &&\n'> <'\tgit commit -m B &&\n'> <'\n'> 
            <'\tgit checkout -b C A &&\n'> <'\tgit mv b c &&\n'> <'\techo 6 >>a &&\n'> <'\tgit add a &&\n'> <'\tgit commit -m C\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'handle rename/rename (2to1) conflict correctly'>)}
        {
          (SQ <'\n'> <'\tgit checkout B^0 &&\n'> <'\n'> 
            <'\ttest_must_fail git merge -s recursive C^0 >out &&\n'> <'\ttest_i18ngrep "CONFLICT (rename/rename)" out &&\n'> <'\n'> 
            <'\ttest 2 -eq $(git ls-files -s | wc -l) &&\n'> <'\ttest 2 -eq $(git ls-files -u | wc -l) &&\n'> <'\ttest 2 -eq $(git ls-files -u c | wc -l) &&\n'> 
            <'\ttest 3 -eq $(git ls-files -o | wc -l) &&\n'> <'\n'> <'\ttest ! -f a &&\n'> <'\ttest ! -f b &&\n'> <'\ttest -f c~HEAD &&\n'> <'\ttest -f c~C^0 &&\n'> 
            <'\n'> <'\ttest $(git hash-object c~HEAD) = $(git rev-parse C:a) &&\n'> 
            <'\ttest $(git hash-object c~C^0) = $(git rev-parse B:b)\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup simple rename/rename (1to2) conflict'>)}
        {
          (SQ <'\n'> <'\tgit rm -rf . &&\n'> <'\tgit clean -fdqx &&\n'> <'\trm -rf .git &&\n'> 
            <'\tgit init &&\n'> <'\n'> <'\techo stuff >a &&\n'> <'\tgit add a &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m A &&\n'> 
            <'\tgit tag A &&\n'> <'\n'> <'\tgit checkout -b B A &&\n'> <'\tgit mv a b &&\n'> <'\ttest_tick &&\n'> 
            <'\tgit commit -m B &&\n'> <'\n'> <'\tgit checkout -b C A &&\n'> <'\tgit mv a c &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m C\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'merge has correct working tree contents'>)}
        {
          (SQ <'\n'> <'\tgit checkout C^0 &&\n'> <'\n'> 
            <'\ttest_must_fail git merge -s recursive B^0 &&\n'> <'\n'> <'\ttest 3 -eq $(git ls-files -s | wc -l) &&\n'> 
            <'\ttest 3 -eq $(git ls-files -u | wc -l) &&\n'> <'\ttest 0 -eq $(git ls-files -o | wc -l) &&\n'> <'\n'> 
            <'\ttest $(git rev-parse :1:a) = $(git rev-parse A:a) &&\n'> <'\ttest $(git rev-parse :3:b) = $(git rev-parse A:a) &&\n'> 
            <'\ttest $(git rev-parse :2:c) = $(git rev-parse A:a) &&\n'> <'\n'> <'\ttest ! -f a &&\n'> <'\ttest $(git hash-object b) = $(git rev-parse A:a) &&\n'> 
            <'\ttest $(git hash-object c) = $(git rev-parse A:a)\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup rename/rename(1to2)/add-source conflict'>)}
        {
          (SQ <'\n'> <'\tgit rm -rf . &&\n'> <'\tgit clean -fdqx &&\n'> <'\trm -rf .git &&\n'> 
            <'\tgit init &&\n'> <'\n'> <'\tprintf "1\\n2\\n3\\n4\\n5\\n6\\n7\\n" >a &&\n'> <'\tgit add a &&\n'> 
            <'\tgit commit -m A &&\n'> <'\tgit tag A &&\n'> <'\n'> <'\tgit checkout -b B A &&\n'> <'\tgit mv a b &&\n'> 
            <'\tgit commit -m B &&\n'> <'\n'> <'\tgit checkout -b C A &&\n'> <'\tgit mv a c &&\n'> 
            <'\techo something completely different >a &&\n'> <'\tgit add a &&\n'> <'\tgit commit -m C\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_failure>
      more_env: []
      words: [
        {<test_expect_failure>}
        {(SQ <'detect conflict with rename/rename(1to2)/add-source merge'>)}
        {
          (SQ <'\n'> <'\tgit checkout B^0 &&\n'> <'\n'> 
            <'\ttest_must_fail git merge -s recursive C^0 &&\n'> <'\n'> <'\ttest 4 -eq $(git ls-files -s | wc -l) &&\n'> 
            <'\ttest 0 -eq $(git ls-files -o | wc -l) &&\n'> <'\n'> <'\ttest $(git rev-parse 3:a) = $(git rev-parse C:a) &&\n'> 
            <'\ttest $(git rev-parse 1:a) = $(git rev-parse A:a) &&\n'> <'\ttest $(git rev-parse 2:b) = $(git rev-parse B:b) &&\n'> 
            <'\ttest $(git rev-parse 3:c) = $(git rev-parse C:c) &&\n'> <'\n'> <'\ttest -f a &&\n'> <'\ttest -f b &&\n'> <'\ttest -f c\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup rename/rename(1to2)/add-source resolvable conflict'>)}
        {
          (SQ <'\n'> <'\tgit rm -rf . &&\n'> <'\tgit clean -fdqx &&\n'> <'\trm -rf .git &&\n'> 
            <'\tgit init &&\n'> <'\n'> <'\t>a &&\n'> <'\tgit add a &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m base &&\n'> 
            <'\tgit tag A &&\n'> <'\n'> <'\tgit checkout -b B A &&\n'> <'\tgit mv a b &&\n'> <'\ttest_tick &&\n'> 
            <'\tgit commit -m one &&\n'> <'\n'> <'\tgit checkout -b C A &&\n'> <'\tgit mv a b &&\n'> <'\techo important-info >a &&\n'> 
            <'\tgit add a &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m two\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_failure>
      more_env: []
      words: [
        {<test_expect_failure>}
        {(SQ <'rename/rename/add-source still tracks new a file'>)}
        {
          (SQ <'\n'> <'\tgit checkout C^0 &&\n'> <'\tgit merge -s recursive B^0 &&\n'> <'\n'> 
            <'\ttest 2 -eq $(git ls-files -s | wc -l) &&\n'> <'\ttest 0 -eq $(git ls-files -o | wc -l) &&\n'> <'\n'> 
            <'\ttest $(git rev-parse HEAD:a) = $(git rev-parse C:a) &&\n'> <'\ttest $(git rev-parse HEAD:b) = $(git rev-parse A:a)\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup rename/rename(1to2)/add-dest conflict'>)}
        {
          (SQ <'\n'> <'\tgit rm -rf . &&\n'> <'\tgit clean -fdqx &&\n'> <'\trm -rf .git &&\n'> 
            <'\tgit init &&\n'> <'\n'> <'\techo stuff >a &&\n'> <'\tgit add a &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m base &&\n'> 
            <'\tgit tag A &&\n'> <'\n'> <'\tgit checkout -b B A &&\n'> <'\tgit mv a b &&\n'> <'\techo precious-data >c &&\n'> 
            <'\tgit add c &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m one &&\n'> <'\n'> <'\tgit checkout -b C A &&\n'> 
            <'\tgit mv a c &&\n'> <'\techo important-info >b &&\n'> <'\tgit add b &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m two\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'rename/rename/add-dest merge still knows about conflicting file versions'>)}
        {
          (SQ <'\n'> <'\tgit checkout C^0 &&\n'> <'\ttest_must_fail git merge -s recursive B^0 &&\n'> 
            <'\n'> <'\ttest 5 -eq $(git ls-files -s | wc -l) &&\n'> <'\ttest 2 -eq $(git ls-files -u b | wc -l) &&\n'> 
            <'\ttest 2 -eq $(git ls-files -u c | wc -l) &&\n'> <'\ttest 4 -eq $(git ls-files -o | wc -l) &&\n'> <'\n'> 
            <'\ttest $(git rev-parse :1:a) = $(git rev-parse A:a) &&\n'> <'\ttest $(git rev-parse :2:b) = $(git rev-parse C:b) &&\n'> 
            <'\ttest $(git rev-parse :3:b) = $(git rev-parse B:b) &&\n'> <'\ttest $(git rev-parse :2:c) = $(git rev-parse C:c) &&\n'> 
            <'\ttest $(git rev-parse :3:c) = $(git rev-parse B:c) &&\n'> <'\n'> <'\ttest $(git hash-object c~HEAD) = $(git rev-parse C:c) &&\n'> 
            <'\ttest $(git hash-object c~B\\^0) = $(git rev-parse B:c) &&\n'> <'\ttest $(git hash-object b~HEAD) = $(git rev-parse C:b) &&\n'> 
            <'\ttest $(git hash-object b~B\\^0) = $(git rev-parse B:b) &&\n'> <'\n'> <'\ttest ! -f b &&\n'> <'\ttest ! -f c\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_done>
      more_env: []
      words: [{<test_done>}]
      redirects: []
      do_fork: T
    )
  ]
)