(command.CommandList children: [ (command.ShFunction name: read_tree_must_succeed body: (BraceGroup children: [ (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp] children: [ (command.Simple words: [{<git>} {<ls-files>} {<-s>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<pre-dry-run>} ) ] do_fork: T ) (C {<git>} {<read-tree>} {<-n>} {(DQ ($ Id.VSub_At '$@'))}) (command.Simple words: [{<git>} {<ls-files>} {<-s>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<post-dry-run>} ) ] do_fork: T ) (C {<test_cmp>} {<pre-dry-run>} {<post-dry-run>}) (C {<git>} {<read-tree>} {(DQ ($ Id.VSub_At '$@'))}) ] ) ] ) ) (command.ShFunction name: read_tree_must_fail body: (BraceGroup children: [ (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp] children: [ (command.Simple words: [{<git>} {<ls-files>} {<-s>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<pre-dry-run>} ) ] do_fork: T ) (C {<test_must_fail>} {<git>} {<read-tree>} {<-n>} {(DQ ($ Id.VSub_At '$@'))}) (command.Simple words: [{<git>} {<ls-files>} {<-s>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<post-dry-run>} ) ] do_fork: T ) (C {<test_cmp>} {<pre-dry-run>} {<post-dry-run>}) (C {<test_must_fail>} {<git>} {<read-tree>} {(DQ ($ Id.VSub_At '$@'))}) ] ) ] ) ) (command.ShFunction name: read_tree_u_must_succeed body: (BraceGroup children: [ (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp] children: [ (command.Simple words: [{<git>} {<ls-files>} {<-s>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<pre-dry-run>} ) ] do_fork: T ) (command.Simple words: [{<git>} {<diff-files>} {<-p>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<pre-dry-run-wt>} ) ] do_fork: T ) (C {<git>} {<read-tree>} {<-n>} {(DQ ($ Id.VSub_At '$@'))}) (command.Simple words: [{<git>} {<ls-files>} {<-s>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<post-dry-run>} ) ] do_fork: T ) (command.Simple words: [{<git>} {<diff-files>} {<-p>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<post-dry-run-wt>} ) ] do_fork: T ) (C {<test_cmp>} {<pre-dry-run>} {<post-dry-run>}) (C {<test_cmp>} {<pre-dry-run-wt>} {<post-dry-run-wt>}) (C {<git>} {<read-tree>} {(DQ ($ Id.VSub_At '$@'))}) ] ) ] ) ) (command.ShFunction name: read_tree_u_must_fail body: (BraceGroup children: [ (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp] children: [ (command.Simple words: [{<git>} {<ls-files>} {<-s>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<pre-dry-run>} ) ] do_fork: T ) (command.Simple words: [{<git>} {<diff-files>} {<-p>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<pre-dry-run-wt>} ) ] do_fork: T ) (C {<test_must_fail>} {<git>} {<read-tree>} {<-n>} {(DQ ($ Id.VSub_At '$@'))}) (command.Simple words: [{<git>} {<ls-files>} {<-s>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<post-dry-run>} ) ] do_fork: T ) (command.Simple words: [{<git>} {<diff-files>} {<-p>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<post-dry-run-wt>} ) ] do_fork: T ) (C {<test_cmp>} {<pre-dry-run>} {<post-dry-run>}) (C {<test_cmp>} {<pre-dry-run-wt>} {<post-dry-run-wt>}) (C {<test_must_fail>} {<git>} {<read-tree>} {(DQ ($ Id.VSub_At '$@'))}) ] ) ] ) ) ] )