(command.CommandList children: [ (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name srcdir> suffix_op: (suffix_op.Unary op_id:Id.VTest_Equals arg_word:{<.>}) ) } ) (command.CommandList children: [ (command.Sentence child: (C {<.>} {(DQ ($ Id.VSub_DollarName '$srcdir') <'/init.sh'>)}) terminator: <Id.Op_Semi _> ) (C {<path_prepend_>} {(DQ ($ Id.VSub_DollarName '$abs_aux_dir'))} {<.>}) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmpdir) op: assign_op.Equal rhs: {<vc-git-> ($ Id.VSub_Dollar '$$')} spids: [77] ) ] ) (command.CommandList children: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:GIT_DIR) op: assign_op.Equal rhs: (word.Empty) spids: [81] ) (assign_pair lhs: (sh_lhs_expr.Name name:GIT_WORK_TREE) op: assign_op.Equal rhs: (word.Empty) spids: [83] ) ] ) terminator: <Id.Op_Semi _> ) (C {<unset>} {<GIT_DIR>} {<GIT_WORK_TREE>}) ] ) (command.ShAssignment pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:fail) op:assign_op.Equal rhs:{<1>} spids:[93])] ) (command.AndOr ops: [ Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp ] children: [ (C {<mkdir>} {($ Id.VSub_DollarName '$tmpdir')}) (C {<cd>} {($ Id.VSub_DollarName '$tmpdir')}) (BraceGroup children: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Subshell child: (C {<git>} {<init>} {<-q>}) redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) (redir op: <Id.Redir_GreatAnd '2>&'> loc: (redir_loc.Fd fd:2) arg: {<1>} ) ] ) (C {<skip_>} {(DQ <'git not found in PATH'>)}) ] ) terminator: <Id.Op_Semi _> ) ] ) (C {<mkdir>} {<d>}) (C {<touch>} {<'d/a'>} {<b>} {<c>}) (C {<git>} {<config>} {<user.email>} {(DQ <'you@example.com'>)}) (C {<git>} {<config>} {<user.name>} {(DQ <'Your Name'>)}) (command.Simple words: [{<git>} {<add>} {<.>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'/dev/null'>})] do_fork: T ) (C {<git>} {<commit>} {<-q>} {<-a>} {<-m>} {<log>}) (command.Simple words: [{<printf>} {(SQ <'%s\\n'>)} {<b>} {<c>} {<'d/a'>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<expected>})] do_fork: T ) (command.Simple words: [{<vc-list-files>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<actual>})] do_fork: T ) (C {<compare>} {<expected>} {<actual>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:fail) op: assign_op.Equal rhs: {<0>} spids: [261] ) ] ) ] ) (C {<Exit>} {($ Id.VSub_DollarName '$fail')}) ] )