(CommandList children: [ (SimpleCommand words: [{(echo)} {(SQ <'WARNING: This command is DEPRECATED and will be removed very soon.'>)}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[25])] ) (SimpleCommand words: [{(echo)} {(SQ <'WARNING: Please use git-merge or git-pull instead.'>)}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[34])] ) (C {(sleep)} {(2)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:USAGE) op: Equal rhs: {(SQ <'<head> <remote> <merge-message>'>)} spids: [42] ) ] spids: [42] ) (C {(.)} {(git-sh-setup)}) (FuncDef name: dropheads body: (BraceGroup children: [ (AndOr ops: [Op_DPipe] children: [ (C {(rm)} {(-f)} {(--)} {(DQ ($ VSub_Name '$GIT_DIR') (/MERGE_HEAD))} {(DQ ($ VSub_Name '$GIT_DIR') (/LAST_MERGE))} ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) ] spids: [56] ) spids: [52 55] ) (AndOr ops: [Op_DAmp Op_DAmp Op_DAmp Op_DPipe] children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:head) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(--verify)} {(DQ ($ VSub_Number '$1')) (Lit_Other '^') (0)} ) ] ) left_token: <Left_CommandSub '$('> spids: [87 99] ) } spids: [86] ) ] spids: [86] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:merge) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(--verify)} {(DQ ($ VSub_Number '$2')) (Lit_Other '^') (0)} ) ] ) left_token: <Left_CommandSub '$('> spids: [104 116] ) } spids: [103] ) ] spids: [103] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:merge_name) op: Equal rhs: {(DQ ($ VSub_Number '$2'))} spids: [120] ) ] spids: [120] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:merge_msg) op: Equal rhs: {(DQ ($ VSub_Number '$3'))} spids: [127] ) ] spids: [127] ) (C {(usage)}) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$head'))} {(-o)} {(-z)} {(DQ ($ VSub_Name '$merge'))} {(-o)} {(-z)} {(DQ ($ VSub_Name '$merge_msg'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [(C {(usage)})] spids: [16777215 178] ) ] spids: [16777215 183] ) (C {(dropheads)}) (SimpleCommand words: [{(echo)} {($ VSub_Name '$head')}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(DQ ($ VSub_Name '$GIT_DIR')) (/ORIG_HEAD)} spids: [192] ) ] ) (SimpleCommand words: [{(echo)} {($ VSub_Name '$merge')}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(DQ ($ VSub_Name '$GIT_DIR')) (/LAST_MERGE)} spids: [203] ) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:common) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(merge-base)} {($ VSub_Name '$head')} {($ VSub_Name '$merge')}) ] ) left_token: <Left_CommandSub '$('> spids: [212 220] ) } spids: [211] ) ] spids: [211] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$common'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(die)} {(DQ ('Unable to find common commit between'))} {($ VSub_Name '$merge')} {($ VSub_Name '$head')} ) ] spids: [16777215 235] ) ] spids: [16777215 248] ) (Case to_match: {(DQ ($ VSub_Name '$common'))} arms: [ (case_arm pat_list: [{(DQ ($ VSub_Name '$merge'))}] action: [ (C {(echo)} {(DQ ('Already up-to-date. Yeeah!'))}) (C {(dropheads)}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] spids: [260 262 280 16777215] ) (case_arm pat_list: [{(DQ ($ VSub_Name '$head'))}] action: [ (C {(echo)} { (DQ ('Updating ') (CommandSubPart command_list: (CommandList children: [(C {(git)} {(rev-parse)} {(--short)} {($ VSub_Name '$head')})] ) left_token: <Left_CommandSub '$('> spids: [292 300] ) (..) (CommandSubPart command_list: (CommandList children: [(C {(git)} {(rev-parse)} {(--short)} {($ VSub_Name '$merge')})] ) left_token: <Left_CommandSub '$('> spids: [302 310] ) ) } ) (AndOr ops: [Op_DPipe] children: [ (C {(git)} {(read-tree)} {(-u)} {(-m)} {($ VSub_Name '$head')} {($ VSub_Name '$merge')}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) (C {(git)} {(update-ref)} {(-m)} {(DQ ('resolve ') ($ VSub_Name '$merge_name') (': Fast-forward'))} {(HEAD)} {(DQ ($ VSub_Name '$merge'))} {(DQ ($ VSub_Name '$head'))} ) (Pipeline children: [ (C {(git)} {(diff-tree)} {(-p)} {($ VSub_Name '$head')} {($ VSub_Name '$merge')}) (C {(git)} {(apply)} {(--stat)}) ] negated: F ) (C {(dropheads)}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] spids: [283 285 385 16777215] ) ] spids: [251 257 387] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(git)} {(var)} {(GIT_COMMITTER_IDENT)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[399])] ) (ControlFlow token:<ControlFlow_Exit exit>) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LF) op:Equal rhs:{(SQ <'\n'>)} spids:[410])] spids: [410] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:common) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(merge-base)} {(-a)} {($ VSub_Name '$head')} {($ VSub_Name '$merge')}) ] ) left_token: <Left_CommandSub '$('> spids: [416 426] ) } spids: [415] ) ] spids: [415] ) (Case to_match: {(DQ ($ VSub_Name '$common'))} arms: [ (case_arm pat_list: [ {(Lit_Other '?') (Lit_Other '*') (DQ ($ VSub_Name '$LF')) (Lit_Other '?') (Lit_Other '*')} ] action: [ (C {(echo)} {(DQ ('Trying to find the optimum merge base.'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:G) op: Equal rhs: {(.tmp-index) ($ VSub_Dollar '$$')} spids: [453] ) ] spids: [453] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:best) op:Equal rhs:{(EmptyPart)} spids:[458])] spids: [458] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:best_cnt) op:Equal rhs:{(-1)} spids:[461])] spids: [461] ) (ForEach iter_name: c iter_words: [{($ VSub_Name '$common')}] do_arg_iter: F body: (DoGroup children: [ (C {(rm)} {(-f)} {($ VSub_Name '$G')}) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [ {(git)} {(read-tree)} {(-m)} {($ VSub_Name '$c')} {($ VSub_Name '$head')} {($ VSub_Name '$merge')} ] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [501] ) ] more_env: [ (env_pair name: GIT_INDEX_FILE val: {($ VSub_Name '$G')} spids: [484] ) ] ) (ControlFlow token:<ControlFlow_Continue continue>) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:cnt) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (SimpleCommand words: [{(git)} {(ls-files)} {(--unmerged)}] more_env: [ (env_pair name: GIT_INDEX_FILE val: {($ VSub_Name '$G')} spids: [515] ) ] ) (C {(wc)} {(-l)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [514 529] ) } spids: [513] ) ] spids: [513] ) (If arms: [ (if_arm cond: [ (AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_Name '$best_cnt')} {(-le)} {(0)}) (C {(test)} {($ VSub_Name '$cnt')} {(-le)} {($ VSub_Name '$best_cnt')}) ] ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:best) op: Equal rhs: {($ VSub_Name '$c')} spids: [556] ) ] spids: [556] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:best_cnt) op: Equal rhs: {($ VSub_Name '$cnt')} spids: [560] ) ] spids: [560] ) (If arms: [ (if_arm cond: [(C {(test)} {(DQ ($ VSub_Name '$best_cnt'))} {(-eq)} {(0)})] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [16777215 577] ) ] spids: [16777215 587] ) ] spids: [16777215 553] ) ] spids: [16777215 590] ) ] spids: [474 593] ) spids: [470 16777215] ) (C {(rm)} {(-f)} {($ VSub_Name '$G')}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:common) op: Equal rhs: {(DQ ($ VSub_Name '$best'))} spids: [603] ) ] spids: [603] ) ] spids: [436 443 16777215 608] ) ] spids: [428 434 608] ) (C {(echo)} { (DQ ('Trying to merge ') ($ VSub_Name '$merge') (' into ') ($ VSub_Name '$head') (' using ') ($ VSub_Name '$common') (.) ) } ) (SimpleCommand words: [{(git)} {(update-index)} {(--refresh)}] redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[629])] ) (AndOr ops: [Op_DPipe] children: [ (C {(git)} {(read-tree)} {(-u)} {(-m)} {($ VSub_Name '$common')} {($ VSub_Name '$head')} {($ VSub_Name '$merge')} ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:result_tree) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [{(git)} {(write-tree)}] redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[658])] ) ] ) left_token: <Left_CommandSub '$('> spids: [653 661] ) } spids: [652] ) ] spids: [652] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-ne)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('Simple merge failed, trying Automatic merge'))}) (C {(git-merge-index)} {(-o)} {(git-merge-one-file)} {(-a)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-ne)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(echo)} {($ VSub_Name '$merge')}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(DQ ($ VSub_Name '$GIT_DIR')) (/MERGE_HEAD)} spids: [715] ) ] ) (C {(die)} {(DQ ('Automatic merge failed, fix up by hand'))}) ] spids: [16777215 708] ) ] spids: [16777215 730] ) (AndOr ops: [Op_DPipe] children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:result_tree) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(git)} {(write-tree)})]) left_token: <Left_CommandSub '$('> spids: [734 738] ) } spids: [733] ) ] spids: [733] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) ] spids: [16777215 676] ) ] spids: [16777215 746] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:result_commit) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(DQ ($ VSub_Name '$merge_msg'))}) (C {(git)} {(commit-tree)} {($ VSub_Name '$result_tree')} {(-p)} {($ VSub_Name '$head')} {(-p)} {($ VSub_Name '$merge')} ) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [749 771] ) } spids: [748] ) ] spids: [748] ) (C {(echo)} {(DQ ('Committed merge ') ($ VSub_Name '$result_commit'))}) (C {(git)} {(update-ref)} {(-m)} {(DQ ('resolve ') ($ VSub_Name '$merge_name') (': In-index merge'))} {(HEAD)} {(DQ ($ VSub_Name '$result_commit'))} {(DQ ($ VSub_Name '$head'))} ) (Pipeline children: [ (C {(git)} {(diff-tree)} {(-p)} {($ VSub_Name '$head')} {($ VSub_Name '$result_commit')}) (C {(git)} {(apply)} {(--stat)}) ] negated: F ) (C {(dropheads)}) ] )