(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:test_description)
          op: Equal
          rhs: {(SQ <'skip-worktree bit test'>)}
          spids: [13]
        )
      ]
      spids: [13]
    )
    (C {(.)} {(./test-lib.sh)})
    (C {(sane_unset)} {(GIT_TEST_SPLIT_INDEX)})
    (C {(test_set_index_version)} {(3)})
    (SimpleCommand
      words: [{(cat)}]
      redirects: [
        (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect.full)} spids:[36])
        (HereDoc
          op_id: Redir_DLess
          fd: 16777215
          body: {(DQ ('H 1\n') ('H 2\n') ('H sub/1\n') ('H sub/2\n'))}
          do_expansion: True
          here_end: EOF
          was_filled: True
          spids: [39]
        )
      ]
    )
    (SimpleCommand
      words: [{(cat)}]
      redirects: [
        (Redir op_id:Redir_Great fd:16777215 arg_word:{(expect.skip)} spids:[50])
        (HereDoc
          op_id: Redir_DLess
          fd: 16777215
          body: {(DQ ('S 1\n') ('H 2\n') ('S sub/1\n') ('H sub/2\n'))}
          do_expansion: True
          here_end: EOF
          was_filled: True
          spids: [53]
        )
      ]
    )
    (C {(test_expect_success)} {(SQ <setup>)} 
      {
        (SQ <'\n'> <'\tmkdir sub &&\n'> <'\ttouch ./1 ./2 sub/1 sub/2 &&\n'> 
          <'\tgit add 1 2 sub/1 sub/2 &&\n'> <'\tgit ls-files -t | test_cmp expect.full -\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'index is at version 2'>)} 
      {(SQ <'\n'> <'\ttest "$(test-index-version < .git/index)" = 2\n'>)}
    )
    (C {(test_expect_success)} {(SQ <'update-index --skip-worktree'>)} 
      {
        (SQ <'\n'> <'\tgit update-index --skip-worktree 1 sub/1 &&\n'> 
          <'\tgit ls-files -t | test_cmp expect.skip -\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'index is at version 3 after having some skip-worktree entries'>)} 
      {(SQ <'\n'> <'\ttest "$(test-index-version < .git/index)" = 3\n'>)}
    )
    (C {(test_expect_success)} {(SQ <'ls-files -t'>)} 
      {(SQ <'\n'> <'\tgit ls-files -t | test_cmp expect.skip -\n'>)}
    )
    (C {(test_expect_success)} {(SQ <'update-index --no-skip-worktree'>)} 
      {
        (SQ <'\n'> <'\tgit update-index --no-skip-worktree 1 sub/1 &&\n'> 
          <'\tgit ls-files -t | test_cmp expect.full -\n'>
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ <'index version is back to 2 when there is no skip-worktree entry'>)} {(SQ <'\n'> <'\ttest "$(test-index-version < .git/index)" = 2\n'>)}
    )
    (C {(test_done)})
  ]
)