(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:test_description)
          op: Equal
          rhs: {(SQ <"avoiding conflicting update thru symref aliasing">)}
          spids: [4]
        )
      ]
      spids: [4]
    )
    (C {(.)} {(./test-lib.sh)})
    (C {(test_expect_success)} {(SQ <setup>)} 
      {
        (SQ <"\n"> <"\ttest_commit one &&\n"> <"\tgit clone . src &&\n"> <"\tgit clone src dst1 &&\n"> 
          <"\tgit clone src dst2 &&\n"> <"\ttest_commit two &&\n"> <"\t( cd src && git pull )\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <push>)} 
      {
        (SQ <"\n"> <"\t(\n"> <"\t\tcd src &&\n"> 
          <"\t\tgit push ../dst1 \"refs/remotes/*:refs/remotes/*\"\n"> <"\t) &&\n"> <"\tgit ls-remote src \"refs/remotes/*\" >expect &&\n"> 
          <"\tgit ls-remote dst1 \"refs/remotes/*\" >actual &&\n"> <"\ttest_cmp expect actual &&\n"> 
          <"\t( cd src && git symbolic-ref refs/remotes/origin/HEAD ) >expect &&\n"> <"\t( cd dst1 && git symbolic-ref refs/remotes/origin/HEAD ) >actual &&\n"> 
          <"\ttest_cmp expect actual\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <fetch>)} 
      {
        (SQ <"\n"> <"\t(\n"> <"\t\tcd dst2 &&\n"> 
          <"\t\tgit fetch ../src \"refs/remotes/*:refs/remotes/*\"\n"> <"\t) &&\n"> <"\tgit ls-remote src \"refs/remotes/*\" >expect &&\n"> 
          <"\tgit ls-remote dst2 \"refs/remotes/*\" >actual &&\n"> <"\ttest_cmp expect actual &&\n"> 
          <"\t( cd src && git symbolic-ref refs/remotes/origin/HEAD ) >expect &&\n"> <"\t( cd dst2 && git symbolic-ref refs/remotes/origin/HEAD ) >actual &&\n"> 
          <"\ttest_cmp expect actual\n">
        )
      }
    )
    (C {(test_done)})
  ]
)