(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 <'tagopt variable affects "git fetch" and is overridden by commandline.'>)}
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <.>
      more_env: []
      words: [{<.>} {<'./test-lib.sh'>}]
      redirects: []
      do_fork: T
    )
    (command.ShFunction
      name_tok: <setup_clone>
      name: setup_clone
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <git>
                  more_env: []
                  words: [{<git>} {<clone>} {<--mirror>} {<.>} {($ Id.VSub_Number 1)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <git>
                  more_env: []
                  words: [
                    {<git>}
                    {<remote>}
                    {<add>}
                    {<remote_> ($ Id.VSub_Number 1)}
                    {($ Id.VSub_Number 1)}
                  ]
                  redirects: []
                  do_fork: T
                )
                (command.Subshell
                  left: <Id.Op_LParen _>
                  child: 
                    (command.AndOr
                      children: [
                        (command.Simple
                          blame_tok: <cd>
                          more_env: []
                          words: [{<cd>} {($ Id.VSub_Number 1)}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <git>
                          more_env: []
                          words: [{<git>} {<tag>} {<tag_> ($ Id.VSub_Number 1)}]
                          redirects: []
                          do_fork: T
                        )
                        (command.Simple
                          blame_tok: <git>
                          more_env: []
                          words: [{<git>} {<branch>} {<branch_> ($ Id.VSub_Number 1)}]
                          redirects: []
                          do_fork: T
                        )
                      ]
                      ops: [<Id.Op_DAmp _> <Id.Op_DAmp _>]
                    )
                  right: <Id.Right_Subshell _>
                  redirects: []
                )
              ]
              ops: [<Id.Op_DAmp _> <Id.Op_DAmp _>]
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {<setup>}
        {
          (SQ <'\n'> <'\ttest_commit test &&\n'> <'\tsetup_clone one &&\n'> 
            <'\tgit config remote.remote_one.tagopt --no-tags &&\n'> <'\tsetup_clone two &&\n'> <'\tgit config remote.remote_two.tagopt --tags\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(DQ <'fetch with tagopt=--no-tags does not get tag'>)}
        {
          (SQ <'\n'> <'\tgit fetch remote_one &&\n'> <'\ttest_must_fail git show-ref tag_one &&\n'> 
            <'\tgit show-ref remote_one/branch_one\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(DQ <'fetch --tags with tagopt=--no-tags gets tag'>)}
        {
          (SQ <'\n'> <'\t(\n'> <'\t\tcd one &&\n'> <'\t\tgit branch second_branch_one\n'> <'\t) &&\n'> 
            <'\tgit fetch --tags remote_one &&\n'> <'\tgit show-ref tag_one &&\n'> <'\tgit show-ref remote_one/second_branch_one\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(DQ <'fetch --no-tags with tagopt=--tags does not get tag'>)}
        {
          (SQ <'\n'> <'\tgit fetch --no-tags remote_two &&\n'> 
            <'\ttest_must_fail git show-ref tag_two &&\n'> <'\tgit show-ref remote_two/branch_two\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(DQ <'fetch with tagopt=--tags gets tag'>)}
        {
          (SQ <'\n'> <'\t(\n'> <'\t\tcd two &&\n'> <'\t\tgit branch second_branch_two\n'> <'\t) &&\n'> 
            <'\tgit fetch remote_two &&\n'> <'\tgit show-ref tag_two &&\n'> <'\tgit show-ref remote_two/second_branch_two\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_done>
      more_env: []
      words: [{<test_done>}]
      redirects: []
      do_fork: T
    )
  ]
)