(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: {(SQ <'subtree merge strategy'>)}
        )
      ]
      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>}
        {<setup>}
        {
          (SQ <'\n'> <'\n'> <'\ts="1 2 3 4 5 6 7 8" &&\n'> 
            <'\tfor i in $s; do echo $i; done >hello &&\n'> <'\tgit add hello &&\n'> <'\tgit commit -m initial &&\n'> <'\tgit checkout -b side &&\n'> 
            <'\techo >>hello world &&\n'> <'\tgit add hello &&\n'> <'\tgit commit -m second &&\n'> <'\tgit checkout master &&\n'> 
            <'\tfor i in mundo $s; do echo $i; done >hello &&\n'> <'\tgit add hello &&\n'> <'\tgit commit -m master\n'> <'\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'subtree available and works like recursive'>)}
        {
          (SQ <'\n'> <'\n'> <'\tgit merge -s subtree side &&\n'> 
            <'\tfor i in mundo $s world; do echo $i; done >expect &&\n'> <'\ttest_cmp expect hello\n'> <'\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <setup>)}
        {
          (SQ <'\n'> <'\tmkdir git-gui &&\n'> <'\tcd git-gui &&\n'> <'\tgit init &&\n'> 
            <'\techo git-gui > git-gui.sh &&\n'> <'\to1=$(git hash-object git-gui.sh) &&\n'> <'\tgit add git-gui.sh &&\n'> 
            <'\tgit commit -m "initial git-gui" &&\n'> <'\tcd .. &&\n'> <'\tmkdir git &&\n'> <'\tcd git &&\n'> <'\tgit init &&\n'> <'\techo git >git.c &&\n'> 
            <'\to2=$(git hash-object git.c) &&\n'> <'\tgit add git.c &&\n'> <'\tgit commit -m "initial git"\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'initial merge'>)}
        {
          (SQ <'\n'> <'\tgit remote add -f gui ../git-gui &&\n'> 
            <'\tgit merge -s ours --no-commit --allow-unrelated-histories gui/master &&\n'> <'\tgit read-tree --prefix=git-gui/ -u gui/master &&\n'> 
            <'\tgit commit -m "Merge git-gui as our subdirectory" &&\n'> <'\tgit checkout -b work &&\n'> <'\tgit ls-files -s >actual &&\n'> <'\t(\n'> 
            <'\t\techo "100644 $o1 0\tgit-gui/git-gui.sh"\n'> <'\t\techo "100644 $o2 0\tgit.c"\n'> <'\t) >expected &&\n'> <'\ttest_cmp expected actual\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'merge update'>)}
        {
          (SQ <'\n'> <'\tcd ../git-gui &&\n'> <'\techo git-gui2 > git-gui.sh &&\n'> 
            <'\to3=$(git hash-object git-gui.sh) &&\n'> <'\tgit add git-gui.sh &&\n'> <'\tgit checkout -b master2 &&\n'> 
            <'\tgit commit -m "update git-gui" &&\n'> <'\tcd ../git &&\n'> <'\tgit pull -s subtree gui master2 &&\n'> <'\tgit ls-files -s >actual &&\n'> 
            <'\t(\n'> <'\t\techo "100644 $o3 0\tgit-gui/git-gui.sh"\n'> <'\t\techo "100644 $o2 0\tgit.c"\n'> 
            <'\t) >expected &&\n'> <'\ttest_cmp expected actual\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'initial ambiguous subtree'>)}
        {
          (SQ <'\n'> <'\tcd ../git &&\n'> <'\tgit reset --hard master &&\n'> 
            <'\tgit checkout -b master2 &&\n'> <'\tgit merge -s ours --no-commit gui/master &&\n'> 
            <'\tgit read-tree --prefix=git-gui2/ -u gui/master &&\n'> <'\tgit commit -m "Merge git-gui2 as our subdirectory" &&\n'> <'\tgit checkout -b work2 &&\n'> 
            <'\tgit ls-files -s >actual &&\n'> <'\t(\n'> <'\t\techo "100644 $o1 0\tgit-gui/git-gui.sh"\n'> 
            <'\t\techo "100644 $o1 0\tgit-gui2/git-gui.sh"\n'> <'\t\techo "100644 $o2 0\tgit.c"\n'> <'\t) >expected &&\n'> <'\ttest_cmp expected actual\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'merge using explicit'>)}
        {
          (SQ <'\n'> <'\tcd ../git &&\n'> <'\tgit reset --hard master2 &&\n'> 
            <'\tgit pull -Xsubtree=git-gui gui master2 &&\n'> <'\tgit ls-files -s >actual &&\n'> <'\t(\n'> <'\t\techo "100644 $o3 0\tgit-gui/git-gui.sh"\n'> 
            <'\t\techo "100644 $o1 0\tgit-gui2/git-gui.sh"\n'> <'\t\techo "100644 $o2 0\tgit.c"\n'> <'\t) >expected &&\n'> <'\ttest_cmp expected actual\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'merge2 using explicit'>)}
        {
          (SQ <'\n'> <'\tcd ../git &&\n'> <'\tgit reset --hard master2 &&\n'> 
            <'\tgit pull -Xsubtree=git-gui2 gui master2 &&\n'> <'\tgit ls-files -s >actual &&\n'> <'\t(\n'> <'\t\techo "100644 $o1 0\tgit-gui/git-gui.sh"\n'> 
            <'\t\techo "100644 $o3 0\tgit-gui2/git-gui.sh"\n'> <'\t\techo "100644 $o2 0\tgit.c"\n'> <'\t) >expected &&\n'> <'\ttest_cmp expected actual\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_done>
      more_env: []
      words: [{<test_done>}]
      redirects: []
      do_fork: T
    )
  ]
)