(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 <'git svn funky branch names'>)}
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <.>
      more_env: []
      words: [{<.>} {<'./lib-git-svn.sh'>}]
      redirects: []
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'scary_uri='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'scary_uri='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'scary_uri='> name:scary_uri)
          op: assign_op.Equal
          rhs: {(SQ <'Abo-Uebernahme%20%28Bug%20%23994%29'>)}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'scary_ref='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'scary_ref='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'scary_ref='> name:scary_ref)
          op: assign_op.Equal
          rhs: {(SQ <'Abo-Uebernahme%20(Bug%20#994)'>)}
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup svnrepo'>)}
        {
          (SQ <'\n'> <'\tmkdir project project/trunk project/branches project/tags &&\n'> 
            <'\techo foo > project/trunk/foo &&\n'> <'\tsvn_cmd import -m "$test_description" project "$svnrepo/pr ject" &&\n'> <'\trm -rf project &&\n'> 
            <'\tsvn_cmd cp -m "fun" "$svnrepo/pr ject/trunk" \\\n'> <'\t                "$svnrepo/pr ject/branches/fun plugin" &&\n'> 
            <'\tsvn_cmd cp -m "more fun!" "$svnrepo/pr ject/branches/fun plugin" \\\n'> <'\t                      "$svnrepo/pr ject/branches/more fun plugin!" &&\n'> 
            <'\tsvn_cmd cp -m "scary" "$svnrepo/pr ject/branches/fun plugin" \\\n'> <'\t              "$svnrepo/pr ject/branches/$scary_uri" &&\n'> 
            <'\tsvn_cmd cp -m "leading dot" "$svnrepo/pr ject/trunk" \\\n'> <'\t\t\t"$svnrepo/pr ject/branches/.leading_dot" &&\n'> <'\tif test_have_prereq !MINGW\n'> <'\tthen\n'> 
            <'\t\tsvn_cmd cp -m "trailing dot" "$svnrepo/pr ject/trunk" \\\n'> <'\t\t\t"$svnrepo/pr ject/branches/trailing_dot."\n'> <'\tfi &&\n'> 
            <'\tsvn_cmd cp -m "trailing .lock" "$svnrepo/pr ject/trunk" \\\n'> <'\t\t\t"$svnrepo/pr ject/branches/trailing_dotlock.lock" &&\n'> 
            <'\tsvn_cmd cp -m "reflog" "$svnrepo/pr ject/trunk" \\\n'> <'\t\t\t"$svnrepo/pr ject/branches/not-a@{0}reflog@" &&\n'> <'\tmaybe_start_httpd\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'non_reflog='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'non_reflog='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'non_reflog='> name:non_reflog)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Pipeline
                    children: [
                      (command.Simple
                        blame_tok: <svn_cmd>
                        more_env: []
                        words: [
                          {<svn_cmd>}
                          {<ls>}
                          {(DQ ($ Id.VSub_DollarName svnrepo) <'/pr ject/branches'>)}
                        ]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <grep>
                        more_env: []
                        words: [{<grep>} {<not-a>}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <sed>
                        more_env: []
                        words: [{<sed>} {(SQ <'s/\\///'>)}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <sed>
                        more_env: []
                        words: [{<sed>} {(SQ <'s/@/%40/'>)}]
                        redirects: []
                        do_fork: T
                      )
                    ]
                    ops: [<Id.Op_Pipe _> <Id.Op_Pipe _> <Id.Op_Pipe _>]
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'test clone with funky branch names'>)}
        {
          (SQ <'\n'> <'\tgit svn clone -s "$svnrepo/pr ject" project &&\n'> <'\t(\n'> 
            <'\t\tcd project &&\n'> <'\t\tgit rev-parse "refs/remotes/origin/fun%20plugin" &&\n'> 
            <'\t\tgit rev-parse "refs/remotes/origin/more%20fun%20plugin!" &&\n'> <'\t\tgit rev-parse "refs/remotes/origin/$scary_ref" &&\n'> 
            <'\t\tgit rev-parse "refs/remotes/origin/%2Eleading_dot" &&\n'> <'\t\tif test_have_prereq !MINGW\n'> <'\t\tthen\n'> 
            <'\t\t\tgit rev-parse "refs/remotes/origin/trailing_dot%2E"\n'> <'\t\tfi &&\n'> <'\t\tgit rev-parse "refs/remotes/origin/trailing_dotlock%2Elock" &&\n'> 
            <'\t\tgit rev-parse "refs/remotes/origin/$non_reflog"\n'> <'\t)\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'test dcommit to funky branch'>)}
        {
          (DQ <'\n'> <'\t(\n'> <'\t\tcd project &&\n'> 
            <'\t\tgit reset --hard \'refs/remotes/origin/more%20fun%20plugin!\' &&\n'> <'\t\techo hello >> foo &&\n'> <'\t\tgit commit -m \'hello\' -- foo &&\n'> <'\t\tgit svn dcommit\n'> 
            <'\t)\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'test dcommit to scary branch'>)}
        {
          (SQ <'\n'> <'\t(\n'> <'\t\tcd project &&\n'> 
            <'\t\tgit reset --hard "refs/remotes/origin/$scary_ref" &&\n'> <'\t\techo urls are scary >> foo &&\n'> <'\t\tgit commit -m "eep" -- foo &&\n'> 
            <'\t\tgit svn dcommit\n'> <'\t)\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'test dcommit to trailing_dotlock branch'>)}
        {
          (SQ <'\n'> <'\t(\n'> <'\t\tcd project &&\n'> 
            <'\t\tgit reset --hard "refs/remotes/origin/trailing_dotlock%2Elock" &&\n'> <'\t\techo who names branches like this anyway? >> foo &&\n'> <'\t\tgit commit -m "bar" -- foo &&\n'> 
            <'\t\tgit svn dcommit\n'> <'\t)\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <stop_httpd>
      more_env: []
      words: [{<stop_httpd>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_done>
      more_env: []
      words: [{<test_done>}]
      redirects: []
      do_fork: T
    )
  ]
)