(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: {(SQ <"Test notes merging with auto-resolving strategies">)} spids: [13] ) ] spids: [13] ) (C {(.)} {(./test-lib.sh)}) (C {(test_expect_success)} {(SQ <"setup commits">)} { (SQ <"\n"> <"\ttest_commit 1st &&\n"> <"\ttest_commit 2nd &&\n"> <"\ttest_commit 3rd &&\n"> <"\ttest_commit 4th &&\n"> <"\ttest_commit 5th &&\n"> <"\ttest_commit 6th &&\n"> <"\ttest_commit 7th &&\n"> <"\ttest_commit 8th &&\n"> <"\ttest_commit 9th &&\n"> <"\ttest_commit 10th &&\n"> <"\ttest_commit 11th &&\n"> <"\ttest_commit 12th &&\n"> <"\ttest_commit 13th &&\n"> <"\ttest_commit 14th &&\n"> <"\ttest_commit 15th\n"> ) } ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha1) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(1st) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [54 64] ) } spids: [53] ) ] spids: [53] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha2) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(2nd) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [67 77] ) } spids: [66] ) ] spids: [66] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha3) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(3rd) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [80 90] ) } spids: [79] ) ] spids: [79] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha4) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(4th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [93 103] ) } spids: [92] ) ] spids: [92] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha5) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(5th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [106 116] ) } spids: [105] ) ] spids: [105] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha6) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(6th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [119 129] ) } spids: [118] ) ] spids: [118] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha7) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(7th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [132 142] ) } spids: [131] ) ] spids: [131] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha8) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(8th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [145 155] ) } spids: [144] ) ] spids: [144] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha9) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(9th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [158 168] ) } spids: [157] ) ] spids: [157] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha10) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(10th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [171 181] ) } spids: [170] ) ] spids: [170] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha11) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(11th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [184 194] ) } spids: [183] ) ] spids: [183] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha12) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(12th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [197 207] ) } spids: [196] ) ] spids: [196] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha13) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(13th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [210 220] ) } spids: [209] ) ] spids: [209] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha14) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(14th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [223 233] ) } spids: [222] ) ] spids: [222] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commit_sha15) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-parse)} {(15th) (Lit_Other "^") (Lit_LBrace "{") (commit) (Lit_RBrace "}")} ) ] ) left_token: <Left_CommandSub "$("> spids: [236 246] ) } spids: [235] ) ] spids: [235] ) (FuncDef name: verify_notes body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:notes_ref) op: Equal rhs: {(DQ ($ VSub_Number "$1"))} spids: [257] ) ] spids: [257] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:suffix) op: Equal rhs: {(DQ ($ VSub_Number "$2"))} spids: [263] ) ] spids: [263] ) (AndOr children: [ (Pipeline children: [ (C {(git)} {(-c)} {(core.notesRef) (Lit_Other "=") (DQ (refs/notes/) ($ VSub_Name "$notes_ref"))} {(notes)} ) (SimpleCommand words: [{(sort)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(DQ (output_notes_) ($ VSub_Name "$suffix"))} spids: [287] ) ] ) ] negated: False ) (AndOr children: [ (C {(test_cmp)} {(DQ (expect_notes_) ($ VSub_Name "$suffix"))} {(DQ (output_notes_) ($ VSub_Name "$suffix"))} ) (AndOr children: [ (SimpleCommand words: [ {(git)} {(-c)} {(core.notesRef) (Lit_Other "=") (DQ (refs/notes/) ($ VSub_Name "$notes_ref")) } {(log)} {(--format) (Lit_Other "=") (DQ ("%H %s%n%N"))} ] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(DQ (output_log_) ($ VSub_Name "$suffix"))} spids: [332] ) ] ) (C {(test_cmp)} {(DQ (expect_log_) ($ VSub_Name "$suffix"))} {(DQ (output_log_) ($ VSub_Name "$suffix"))} ) ] op_id: Op_DAmp ) ] op_id: Op_DAmp ) ] op_id: Op_DAmp ) ] spids: [254] ) spids: [249 253] ) (C {(test_expect_success)} {(SQ <"setup merge base (x)">)} { (SQ <"\n"> <"\tgit config core.notesRef refs/notes/x &&\n"> <"\tgit notes add -m \"x notes on 6th commit\" 6th &&\n"> <"\tgit notes add -m \"x notes on 7th commit\" 7th &&\n"> <"\tgit notes add -m \"x notes on 8th commit\" 8th &&\n"> <"\tgit notes add -m \"x notes on 9th commit\" 9th &&\n"> <"\tgit notes add -m \"x notes on 10th commit\" 10th &&\n"> <"\tgit notes add -m \"x notes on 11th commit\" 11th &&\n"> <"\tgit notes add -m \"x notes on 12th commit\" 12th &&\n"> <"\tgit notes add -m \"x notes on 13th commit\" 13th &&\n"> <"\tgit notes add -m \"x notes on 14th commit\" 14th &&\n"> <"\tgit notes add -m \"x notes on 15th commit\" 15th\n"> ) } ) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ("457a85d6c814ea208550f15fcc48f804ac8dc023 ") ($ VSub_Name "$commit_sha15") ("\n") ("b0c95b954301d69da2bc3723f4cb1680d355937c ") ($ VSub_Name "$commit_sha14") ("\n") ("5d30216a129eeffa97d9694ffe8c74317a560315 ") ($ VSub_Name "$commit_sha13") ("\n") ("dd161bc149470fd890dd4ab52a4cbd79bbd18c36 ") ($ VSub_Name "$commit_sha12") ("\n") ("7abbc45126d680336fb24294f013a7cdfa3ed545 ") ($ VSub_Name "$commit_sha11") ("\n") ("b8d03e173f67f6505a76f6e00cf93440200dd9be ") ($ VSub_Name "$commit_sha10") ("\n") ("20c613c835011c48a5abe29170a2402ca6354910 ") ($ VSub_Name "$commit_sha9") ("\n") ("a3daf8a1e4e5dc3409a303ad8481d57bfea7f5d6 ") ($ VSub_Name "$commit_sha8") ("\n") ("897003322b53bc6ca098e9324ee508362347e734 ") ($ VSub_Name "$commit_sha7") ("\n") ("11d97fdebfa5ceee540a3da07bce6fa0222bc082 ") ($ VSub_Name "$commit_sha6") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [380] ) ] ) (SimpleCommand words: [{(sort)}] redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(expect_notes_x)} spids:[387])] ) ] negated: False ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:-1 arg_word:{(expect_log_x)} spids:[423]) (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ($ VSub_Name "$commit_sha15") (" 15th\n") ("x notes on 15th commit\n") ("\n") ($ VSub_Name "$commit_sha14") (" 14th\n") ("x notes on 14th commit\n") ("\n") ($ VSub_Name "$commit_sha13") (" 13th\n") ("x notes on 13th commit\n") ("\n") ($ VSub_Name "$commit_sha12") (" 12th\n") ("x notes on 12th commit\n") ("\n") ($ VSub_Name "$commit_sha11") (" 11th\n") ("x notes on 11th commit\n") ("\n") ($ VSub_Name "$commit_sha10") (" 10th\n") ("x notes on 10th commit\n") ("\n") ($ VSub_Name "$commit_sha9") (" 9th\n") ("x notes on 9th commit\n") ("\n") ($ VSub_Name "$commit_sha8") (" 8th\n") ("x notes on 8th commit\n") ("\n") ($ VSub_Name "$commit_sha7") (" 7th\n") ("x notes on 7th commit\n") ("\n") ($ VSub_Name "$commit_sha6") (" 6th\n") ("x notes on 6th commit\n") ("\n") ($ VSub_Name "$commit_sha5") (" 5th\n") ("\n") ($ VSub_Name "$commit_sha4") (" 4th\n") ("\n") ($ VSub_Name "$commit_sha3") (" 3rd\n") ("\n") ($ VSub_Name "$commit_sha2") (" 2nd\n") ("\n") ($ VSub_Name "$commit_sha1") (" 1st\n") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [426] ) ] ) (C {(test_expect_success)} {(SQ <"verify state of merge base (x)">)} {(SQ <"verify_notes x x">)}) (C {(test_expect_success)} {(SQ <"setup local branch (y)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/y refs/notes/x &&\n"> <"\tgit config core.notesRef refs/notes/y &&\n"> <"\tgit notes add -f -m \"y notes on 3rd commit\" 3rd &&\n"> <"\tgit notes add -f -m \"y notes on 4th commit\" 4th &&\n"> <"\tgit notes add -f -m \"y notes on 5th commit\" 5th &&\n"> <"\tgit notes remove 6th &&\n"> <"\tgit notes remove 7th &&\n"> <"\tgit notes remove 8th &&\n"> <"\tgit notes add -f -m \"y notes on 12th commit\" 12th &&\n"> <"\tgit notes add -f -m \"y notes on 13th commit\" 13th &&\n"> <"\tgit notes add -f -m \"y notes on 14th commit\" 14th &&\n"> <"\tgit notes add -f -m \"y notes on 15th commit\" 15th\n"> ) } ) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ("68b8630d25516028bed862719855b3d6768d7833 ") ($ VSub_Name "$commit_sha15") ("\n") ("5de7ea7ad4f47e7ff91989fb82234634730f75df ") ($ VSub_Name "$commit_sha14") ("\n") ("3a631fdb6f41b05b55d8f4baf20728ba8f6fccbc ") ($ VSub_Name "$commit_sha13") ("\n") ("a66055fa82f7a03fe0c02a6aba3287a85abf7c62 ") ($ VSub_Name "$commit_sha12") ("\n") ("7abbc45126d680336fb24294f013a7cdfa3ed545 ") ($ VSub_Name "$commit_sha11") ("\n") ("b8d03e173f67f6505a76f6e00cf93440200dd9be ") ($ VSub_Name "$commit_sha10") ("\n") ("20c613c835011c48a5abe29170a2402ca6354910 ") ($ VSub_Name "$commit_sha9") ("\n") ("154508c7a0bcad82b6fe4b472bc4c26b3bf0825b ") ($ VSub_Name "$commit_sha5") ("\n") ("e2bfd06a37dd2031684a59a6e2b033e212239c78 ") ($ VSub_Name "$commit_sha4") ("\n") ("5772f42408c0dd6f097a7ca2d24de0e78d1c46b1 ") ($ VSub_Name "$commit_sha3") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [521] ) ] ) (SimpleCommand words: [{(sort)}] redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(expect_notes_y)} spids:[528])] ) ] negated: False ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:-1 arg_word:{(expect_log_y)} spids:[564]) (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ($ VSub_Name "$commit_sha15") (" 15th\n") ("y notes on 15th commit\n") ("\n") ($ VSub_Name "$commit_sha14") (" 14th\n") ("y notes on 14th commit\n") ("\n") ($ VSub_Name "$commit_sha13") (" 13th\n") ("y notes on 13th commit\n") ("\n") ($ VSub_Name "$commit_sha12") (" 12th\n") ("y notes on 12th commit\n") ("\n") ($ VSub_Name "$commit_sha11") (" 11th\n") ("x notes on 11th commit\n") ("\n") ($ VSub_Name "$commit_sha10") (" 10th\n") ("x notes on 10th commit\n") ("\n") ($ VSub_Name "$commit_sha9") (" 9th\n") ("x notes on 9th commit\n") ("\n") ($ VSub_Name "$commit_sha8") (" 8th\n") ("\n") ($ VSub_Name "$commit_sha7") (" 7th\n") ("\n") ($ VSub_Name "$commit_sha6") (" 6th\n") ("\n") ($ VSub_Name "$commit_sha5") (" 5th\n") ("y notes on 5th commit\n") ("\n") ($ VSub_Name "$commit_sha4") (" 4th\n") ("y notes on 4th commit\n") ("\n") ($ VSub_Name "$commit_sha3") (" 3rd\n") ("y notes on 3rd commit\n") ("\n") ($ VSub_Name "$commit_sha2") (" 2nd\n") ("\n") ($ VSub_Name "$commit_sha1") (" 1st\n") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [567] ) ] ) (C {(test_expect_success)} {(SQ <"verify state of local branch (y)">)} {(SQ <"verify_notes y y">)}) (C {(test_expect_success)} {(SQ <"setup remote branch (z)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/z refs/notes/x &&\n"> <"\tgit config core.notesRef refs/notes/z &&\n"> <"\tgit notes add -f -m \"z notes on 2nd commit\" 2nd &&\n"> <"\tgit notes add -f -m \"y notes on 4th commit\" 4th &&\n"> <"\tgit notes add -f -m \"z notes on 5th commit\" 5th &&\n"> <"\tgit notes remove 6th &&\n"> <"\tgit notes add -f -m \"z notes on 8th commit\" 8th &&\n"> <"\tgit notes remove 9th &&\n"> <"\tgit notes add -f -m \"z notes on 11th commit\" 11th &&\n"> <"\tgit notes remove 12th &&\n"> <"\tgit notes add -f -m \"y notes on 14th commit\" 14th &&\n"> <"\tgit notes add -f -m \"z notes on 15th commit\" 15th\n"> ) } ) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ("9b4b2c61f0615412da3c10f98ff85b57c04ec765 ") ($ VSub_Name "$commit_sha15") ("\n") ("5de7ea7ad4f47e7ff91989fb82234634730f75df ") ($ VSub_Name "$commit_sha14") ("\n") ("5d30216a129eeffa97d9694ffe8c74317a560315 ") ($ VSub_Name "$commit_sha13") ("\n") ("7e3c53503a3db8dd996cb62e37c66e070b44b54d ") ($ VSub_Name "$commit_sha11") ("\n") ("b8d03e173f67f6505a76f6e00cf93440200dd9be ") ($ VSub_Name "$commit_sha10") ("\n") ("851e1638784a884c7dd26c5d41f3340f6387413a ") ($ VSub_Name "$commit_sha8") ("\n") ("897003322b53bc6ca098e9324ee508362347e734 ") ($ VSub_Name "$commit_sha7") ("\n") ("99fc34adfc400b95c67b013115e37e31aa9a6d23 ") ($ VSub_Name "$commit_sha5") ("\n") ("e2bfd06a37dd2031684a59a6e2b033e212239c78 ") ($ VSub_Name "$commit_sha4") ("\n") ("283b48219aee9a4105f6cab337e789065c82c2b9 ") ($ VSub_Name "$commit_sha2") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [662] ) ] ) (SimpleCommand words: [{(sort)}] redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(expect_notes_z)} spids:[669])] ) ] negated: False ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:-1 arg_word:{(expect_log_z)} spids:[705]) (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ($ VSub_Name "$commit_sha15") (" 15th\n") ("z notes on 15th commit\n") ("\n") ($ VSub_Name "$commit_sha14") (" 14th\n") ("y notes on 14th commit\n") ("\n") ($ VSub_Name "$commit_sha13") (" 13th\n") ("x notes on 13th commit\n") ("\n") ($ VSub_Name "$commit_sha12") (" 12th\n") ("\n") ($ VSub_Name "$commit_sha11") (" 11th\n") ("z notes on 11th commit\n") ("\n") ($ VSub_Name "$commit_sha10") (" 10th\n") ("x notes on 10th commit\n") ("\n") ($ VSub_Name "$commit_sha9") (" 9th\n") ("\n") ($ VSub_Name "$commit_sha8") (" 8th\n") ("z notes on 8th commit\n") ("\n") ($ VSub_Name "$commit_sha7") (" 7th\n") ("x notes on 7th commit\n") ("\n") ($ VSub_Name "$commit_sha6") (" 6th\n") ("\n") ($ VSub_Name "$commit_sha5") (" 5th\n") ("z notes on 5th commit\n") ("\n") ($ VSub_Name "$commit_sha4") (" 4th\n") ("y notes on 4th commit\n") ("\n") ($ VSub_Name "$commit_sha3") (" 3rd\n") ("\n") ($ VSub_Name "$commit_sha2") (" 2nd\n") ("z notes on 2nd commit\n") ("\n") ($ VSub_Name "$commit_sha1") (" 1st\n") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [708] ) ] ) (C {(test_expect_success)} {(SQ <"verify state of remote branch (z)">)} {(SQ <"verify_notes z z">)}) (C {(test_expect_success)} {(SQ <"merge z into y with invalid strategy => Fail/No changes">)} { (SQ <"\n"> <"\tgit config core.notesRef refs/notes/y &&\n"> <"\ttest_must_fail git notes merge --strategy=foo z &&\n"> <"\t# Verify no changes (y)\n"> <"\tverify_notes y y\n"> ) } ) (C {(test_expect_success)} {(SQ <"merge z into y with invalid configuration option => Fail/No changes">)} { (SQ <"\n"> <"\tgit config core.notesRef refs/notes/y &&\n"> <"\ttest_must_fail git -c notes.mergeStrategy=\"foo\" notes merge z &&\n"> <"\t# Verify no changes (y)\n"> <"\tverify_notes y y\n"> ) } ) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ("68b8630d25516028bed862719855b3d6768d7833 ") ($ VSub_Name "$commit_sha15") ("\n") ("5de7ea7ad4f47e7ff91989fb82234634730f75df ") ($ VSub_Name "$commit_sha14") ("\n") ("3a631fdb6f41b05b55d8f4baf20728ba8f6fccbc ") ($ VSub_Name "$commit_sha13") ("\n") ("a66055fa82f7a03fe0c02a6aba3287a85abf7c62 ") ($ VSub_Name "$commit_sha12") ("\n") ("7e3c53503a3db8dd996cb62e37c66e070b44b54d ") ($ VSub_Name "$commit_sha11") ("\n") ("b8d03e173f67f6505a76f6e00cf93440200dd9be ") ($ VSub_Name "$commit_sha10") ("\n") ("154508c7a0bcad82b6fe4b472bc4c26b3bf0825b ") ($ VSub_Name "$commit_sha5") ("\n") ("e2bfd06a37dd2031684a59a6e2b033e212239c78 ") ($ VSub_Name "$commit_sha4") ("\n") ("5772f42408c0dd6f097a7ca2d24de0e78d1c46b1 ") ($ VSub_Name "$commit_sha3") ("\n") ("283b48219aee9a4105f6cab337e789065c82c2b9 ") ($ VSub_Name "$commit_sha2") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [868] ) ] ) (SimpleCommand words: [{(sort)}] redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(expect_notes_ours)} spids:[875])] ) ] negated: False ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:-1 arg_word:{(expect_log_ours)} spids:[911]) (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ($ VSub_Name "$commit_sha15") (" 15th\n") ("y notes on 15th commit\n") ("\n") ($ VSub_Name "$commit_sha14") (" 14th\n") ("y notes on 14th commit\n") ("\n") ($ VSub_Name "$commit_sha13") (" 13th\n") ("y notes on 13th commit\n") ("\n") ($ VSub_Name "$commit_sha12") (" 12th\n") ("y notes on 12th commit\n") ("\n") ($ VSub_Name "$commit_sha11") (" 11th\n") ("z notes on 11th commit\n") ("\n") ($ VSub_Name "$commit_sha10") (" 10th\n") ("x notes on 10th commit\n") ("\n") ($ VSub_Name "$commit_sha9") (" 9th\n") ("\n") ($ VSub_Name "$commit_sha8") (" 8th\n") ("\n") ($ VSub_Name "$commit_sha7") (" 7th\n") ("\n") ($ VSub_Name "$commit_sha6") (" 6th\n") ("\n") ($ VSub_Name "$commit_sha5") (" 5th\n") ("y notes on 5th commit\n") ("\n") ($ VSub_Name "$commit_sha4") (" 4th\n") ("y notes on 4th commit\n") ("\n") ($ VSub_Name "$commit_sha3") (" 3rd\n") ("y notes on 3rd commit\n") ("\n") ($ VSub_Name "$commit_sha2") (" 2nd\n") ("z notes on 2nd commit\n") ("\n") ($ VSub_Name "$commit_sha1") (" 1st\n") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [914] ) ] ) (C {(test_expect_success)} {(SQ <"merge z into y with \"ours\" strategy => Non-conflicting 3-way merge">)} {(SQ <"\n"> <"\tgit notes merge --strategy=ours z &&\n"> <"\tverify_notes y ours\n">)} ) (C {(test_expect_success)} {(SQ <"reset to pre-merge state (y)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/y refs/notes/y^1 &&\n"> <"\t# Verify pre-merge state\n"> <"\tverify_notes y y\n"> ) } ) (C {(test_expect_success)} {(SQ <"merge z into y with \"ours\" configuration option => Non-conflicting 3-way merge">)} {(SQ <"\n"> <"\tgit -c notes.mergeStrategy=\"ours\" notes merge z &&\n"> <"\tverify_notes y ours\n">)} ) (C {(test_expect_success)} {(SQ <"reset to pre-merge state (y)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/y refs/notes/y^1 &&\n"> <"\t# Verify pre-merge state\n"> <"\tverify_notes y y\n"> ) } ) (C {(test_expect_success)} { (SQ < "merge z into y with \"ours\" per-ref configuration option => Non-conflicting 3-way merge" > ) } { (SQ <"\n"> <"\tgit -c notes.y.mergeStrategy=\"ours\" notes merge z &&\n"> <"\tverify_notes y ours\n"> ) } ) (C {(test_expect_success)} {(SQ <"reset to pre-merge state (y)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/y refs/notes/y^1 &&\n"> <"\t# Verify pre-merge state\n"> <"\tverify_notes y y\n"> ) } ) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ("9b4b2c61f0615412da3c10f98ff85b57c04ec765 ") ($ VSub_Name "$commit_sha15") ("\n") ("5de7ea7ad4f47e7ff91989fb82234634730f75df ") ($ VSub_Name "$commit_sha14") ("\n") ("3a631fdb6f41b05b55d8f4baf20728ba8f6fccbc ") ($ VSub_Name "$commit_sha13") ("\n") ("7e3c53503a3db8dd996cb62e37c66e070b44b54d ") ($ VSub_Name "$commit_sha11") ("\n") ("b8d03e173f67f6505a76f6e00cf93440200dd9be ") ($ VSub_Name "$commit_sha10") ("\n") ("851e1638784a884c7dd26c5d41f3340f6387413a ") ($ VSub_Name "$commit_sha8") ("\n") ("99fc34adfc400b95c67b013115e37e31aa9a6d23 ") ($ VSub_Name "$commit_sha5") ("\n") ("e2bfd06a37dd2031684a59a6e2b033e212239c78 ") ($ VSub_Name "$commit_sha4") ("\n") ("5772f42408c0dd6f097a7ca2d24de0e78d1c46b1 ") ($ VSub_Name "$commit_sha3") ("\n") ("283b48219aee9a4105f6cab337e789065c82c2b9 ") ($ VSub_Name "$commit_sha2") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [1056] ) ] ) (SimpleCommand words: [{(sort)}] redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(expect_notes_theirs)} spids:[1063])] ) ] negated: False ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:-1 arg_word:{(expect_log_theirs)} spids:[1099]) (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ($ VSub_Name "$commit_sha15") (" 15th\n") ("z notes on 15th commit\n") ("\n") ($ VSub_Name "$commit_sha14") (" 14th\n") ("y notes on 14th commit\n") ("\n") ($ VSub_Name "$commit_sha13") (" 13th\n") ("y notes on 13th commit\n") ("\n") ($ VSub_Name "$commit_sha12") (" 12th\n") ("\n") ($ VSub_Name "$commit_sha11") (" 11th\n") ("z notes on 11th commit\n") ("\n") ($ VSub_Name "$commit_sha10") (" 10th\n") ("x notes on 10th commit\n") ("\n") ($ VSub_Name "$commit_sha9") (" 9th\n") ("\n") ($ VSub_Name "$commit_sha8") (" 8th\n") ("z notes on 8th commit\n") ("\n") ($ VSub_Name "$commit_sha7") (" 7th\n") ("\n") ($ VSub_Name "$commit_sha6") (" 6th\n") ("\n") ($ VSub_Name "$commit_sha5") (" 5th\n") ("z notes on 5th commit\n") ("\n") ($ VSub_Name "$commit_sha4") (" 4th\n") ("y notes on 4th commit\n") ("\n") ($ VSub_Name "$commit_sha3") (" 3rd\n") ("y notes on 3rd commit\n") ("\n") ($ VSub_Name "$commit_sha2") (" 2nd\n") ("z notes on 2nd commit\n") ("\n") ($ VSub_Name "$commit_sha1") (" 1st\n") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [1102] ) ] ) (C {(test_expect_success)} {(SQ <"merge z into y with \"theirs\" strategy => Non-conflicting 3-way merge">)} {(SQ <"\n"> <"\tgit notes merge --strategy=theirs z &&\n"> <"\tverify_notes y theirs\n">)} ) (C {(test_expect_success)} {(SQ <"reset to pre-merge state (y)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/y refs/notes/y^1 &&\n"> <"\t# Verify pre-merge state\n"> <"\tverify_notes y y\n"> ) } ) (C {(test_expect_success)} { (SQ < "merge z into y with \"theirs\" strategy overriding configuration option \"ours\" => Non-conflicting 3-way merge" > ) } { (SQ <"\n"> <"\tgit -c notes.mergeStrategy=\"ours\" notes merge --strategy=theirs z &&\n"> <"\tverify_notes y theirs\n"> ) } ) (C {(test_expect_success)} {(SQ <"reset to pre-merge state (y)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/y refs/notes/y^1 &&\n"> <"\t# Verify pre-merge state\n"> <"\tverify_notes y y\n"> ) } ) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ("7c4e546efd0fe939f876beb262ece02797880b54 ") ($ VSub_Name "$commit_sha15") ("\n") ("5de7ea7ad4f47e7ff91989fb82234634730f75df ") ($ VSub_Name "$commit_sha14") ("\n") ("3a631fdb6f41b05b55d8f4baf20728ba8f6fccbc ") ($ VSub_Name "$commit_sha13") ("\n") ("a66055fa82f7a03fe0c02a6aba3287a85abf7c62 ") ($ VSub_Name "$commit_sha12") ("\n") ("7e3c53503a3db8dd996cb62e37c66e070b44b54d ") ($ VSub_Name "$commit_sha11") ("\n") ("b8d03e173f67f6505a76f6e00cf93440200dd9be ") ($ VSub_Name "$commit_sha10") ("\n") ("851e1638784a884c7dd26c5d41f3340f6387413a ") ($ VSub_Name "$commit_sha8") ("\n") ("6c841cc36ea496027290967ca96bd2bef54dbb47 ") ($ VSub_Name "$commit_sha5") ("\n") ("e2bfd06a37dd2031684a59a6e2b033e212239c78 ") ($ VSub_Name "$commit_sha4") ("\n") ("5772f42408c0dd6f097a7ca2d24de0e78d1c46b1 ") ($ VSub_Name "$commit_sha3") ("\n") ("283b48219aee9a4105f6cab337e789065c82c2b9 ") ($ VSub_Name "$commit_sha2") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [1217] ) ] ) (SimpleCommand words: [{(sort)}] redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(expect_notes_union)} spids:[1224])] ) ] negated: False ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:-1 arg_word:{(expect_log_union)} spids:[1263]) (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ($ VSub_Name "$commit_sha15") (" 15th\n") ("y notes on 15th commit\n") ("\n") ("z notes on 15th commit\n") ("\n") ($ VSub_Name "$commit_sha14") (" 14th\n") ("y notes on 14th commit\n") ("\n") ($ VSub_Name "$commit_sha13") (" 13th\n") ("y notes on 13th commit\n") ("\n") ($ VSub_Name "$commit_sha12") (" 12th\n") ("y notes on 12th commit\n") ("\n") ($ VSub_Name "$commit_sha11") (" 11th\n") ("z notes on 11th commit\n") ("\n") ($ VSub_Name "$commit_sha10") (" 10th\n") ("x notes on 10th commit\n") ("\n") ($ VSub_Name "$commit_sha9") (" 9th\n") ("\n") ($ VSub_Name "$commit_sha8") (" 8th\n") ("z notes on 8th commit\n") ("\n") ($ VSub_Name "$commit_sha7") (" 7th\n") ("\n") ($ VSub_Name "$commit_sha6") (" 6th\n") ("\n") ($ VSub_Name "$commit_sha5") (" 5th\n") ("y notes on 5th commit\n") ("\n") ("z notes on 5th commit\n") ("\n") ($ VSub_Name "$commit_sha4") (" 4th\n") ("y notes on 4th commit\n") ("\n") ($ VSub_Name "$commit_sha3") (" 3rd\n") ("y notes on 3rd commit\n") ("\n") ($ VSub_Name "$commit_sha2") (" 2nd\n") ("z notes on 2nd commit\n") ("\n") ($ VSub_Name "$commit_sha1") (" 1st\n") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [1266] ) ] ) (C {(test_expect_success)} {(SQ <"merge z into y with \"union\" strategy => Non-conflicting 3-way merge">)} {(SQ <"\n"> <"\tgit notes merge --strategy=union z &&\n"> <"\tverify_notes y union\n">)} ) (C {(test_expect_success)} {(SQ <"reset to pre-merge state (y)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/y refs/notes/y^1 &&\n"> <"\t# Verify pre-merge state\n"> <"\tverify_notes y y\n"> ) } ) (C {(test_expect_success)} { (SQ < "merge z into y with \"union\" strategy overriding per-ref configuration => Non-conflicting 3-way merge" > ) } { (SQ <"\n"> <"\tgit -c notes.y.mergeStrategy=\"theirs\" notes merge --strategy=union z &&\n"> <"\tverify_notes y union\n"> ) } ) (C {(test_expect_success)} {(SQ <"reset to pre-merge state (y)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/y refs/notes/y^1 &&\n"> <"\t# Verify pre-merge state\n"> <"\tverify_notes y y\n"> ) } ) (C {(test_expect_success)} { (SQ < "merge z into y with \"union\" per-ref overriding general configuration => Non-conflicting 3-way merge" > ) } { (SQ <"\n"> < "\tgit -c notes.y.mergeStrategy=\"union\" -c notes.mergeStrategy=\"theirs\" notes merge z &&\n" > <"\tverify_notes y union\n"> ) } ) (C {(test_expect_success)} {(SQ <"reset to pre-merge state (y)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/y refs/notes/y^1 &&\n"> <"\t# Verify pre-merge state\n"> <"\tverify_notes y y\n"> ) } ) (C {(test_expect_success)} { (SQ < "merge z into y with \"manual\" per-ref only checks specific ref configuration => Conflicting 3-way merge" > ) } { (SQ <"\n"> <"\ttest_must_fail git -c notes.z.mergeStrategy=\"union\" notes merge z &&\n"> <"\tgit notes merge --abort &&\n"> <"\tverify_notes y y\n"> ) } ) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ("d682107b8bf7a7aea1e537a8d5cb6a12b60135f1 ") ($ VSub_Name "$commit_sha15") ("\n") ("5de7ea7ad4f47e7ff91989fb82234634730f75df ") ($ VSub_Name "$commit_sha14") ("\n") ("3a631fdb6f41b05b55d8f4baf20728ba8f6fccbc ") ($ VSub_Name "$commit_sha13") ("\n") ("a66055fa82f7a03fe0c02a6aba3287a85abf7c62 ") ($ VSub_Name "$commit_sha12") ("\n") ("7e3c53503a3db8dd996cb62e37c66e070b44b54d ") ($ VSub_Name "$commit_sha11") ("\n") ("b8d03e173f67f6505a76f6e00cf93440200dd9be ") ($ VSub_Name "$commit_sha10") ("\n") ("851e1638784a884c7dd26c5d41f3340f6387413a ") ($ VSub_Name "$commit_sha8") ("\n") ("357b6ca14c7afd59b7f8b8aaaa6b8b723771135b ") ($ VSub_Name "$commit_sha5") ("\n") ("e2bfd06a37dd2031684a59a6e2b033e212239c78 ") ($ VSub_Name "$commit_sha4") ("\n") ("5772f42408c0dd6f097a7ca2d24de0e78d1c46b1 ") ($ VSub_Name "$commit_sha3") ("\n") ("283b48219aee9a4105f6cab337e789065c82c2b9 ") ($ VSub_Name "$commit_sha2") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [1427] ) ] ) (SimpleCommand words: [{(sort)}] redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(expect_notes_union2)} spids:[1434])] ) ] negated: False ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:-1 arg_word:{(expect_log_union2)} spids:[1473]) (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ($ VSub_Name "$commit_sha15") (" 15th\n") ("z notes on 15th commit\n") ("\n") ("y notes on 15th commit\n") ("\n") ($ VSub_Name "$commit_sha14") (" 14th\n") ("y notes on 14th commit\n") ("\n") ($ VSub_Name "$commit_sha13") (" 13th\n") ("y notes on 13th commit\n") ("\n") ($ VSub_Name "$commit_sha12") (" 12th\n") ("y notes on 12th commit\n") ("\n") ($ VSub_Name "$commit_sha11") (" 11th\n") ("z notes on 11th commit\n") ("\n") ($ VSub_Name "$commit_sha10") (" 10th\n") ("x notes on 10th commit\n") ("\n") ($ VSub_Name "$commit_sha9") (" 9th\n") ("\n") ($ VSub_Name "$commit_sha8") (" 8th\n") ("z notes on 8th commit\n") ("\n") ($ VSub_Name "$commit_sha7") (" 7th\n") ("\n") ($ VSub_Name "$commit_sha6") (" 6th\n") ("\n") ($ VSub_Name "$commit_sha5") (" 5th\n") ("z notes on 5th commit\n") ("\n") ("y notes on 5th commit\n") ("\n") ($ VSub_Name "$commit_sha4") (" 4th\n") ("y notes on 4th commit\n") ("\n") ($ VSub_Name "$commit_sha3") (" 3rd\n") ("y notes on 3rd commit\n") ("\n") ($ VSub_Name "$commit_sha2") (" 2nd\n") ("z notes on 2nd commit\n") ("\n") ($ VSub_Name "$commit_sha1") (" 1st\n") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [1476] ) ] ) (C {(test_expect_success)} {(SQ <"merge y into z with \"union\" strategy => Non-conflicting 3-way merge">)} { (SQ <"\n"> <"\tgit config core.notesRef refs/notes/z &&\n"> <"\tgit notes merge --strategy=union y &&\n"> <"\tverify_notes z union2\n"> ) } ) (C {(test_expect_success)} {(SQ <"reset to pre-merge state (z)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/z refs/notes/z^1 &&\n"> <"\t# Verify pre-merge state\n"> <"\tverify_notes z z\n"> ) } ) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ("6be90240b5f54594203e25d9f2f64b7567175aee ") ($ VSub_Name "$commit_sha15") ("\n") ("5de7ea7ad4f47e7ff91989fb82234634730f75df ") ($ VSub_Name "$commit_sha14") ("\n") ("3a631fdb6f41b05b55d8f4baf20728ba8f6fccbc ") ($ VSub_Name "$commit_sha13") ("\n") ("a66055fa82f7a03fe0c02a6aba3287a85abf7c62 ") ($ VSub_Name "$commit_sha12") ("\n") ("7e3c53503a3db8dd996cb62e37c66e070b44b54d ") ($ VSub_Name "$commit_sha11") ("\n") ("b8d03e173f67f6505a76f6e00cf93440200dd9be ") ($ VSub_Name "$commit_sha10") ("\n") ("851e1638784a884c7dd26c5d41f3340f6387413a ") ($ VSub_Name "$commit_sha8") ("\n") ("660311d7f78dc53db12ac373a43fca7465381a7e ") ($ VSub_Name "$commit_sha5") ("\n") ("e2bfd06a37dd2031684a59a6e2b033e212239c78 ") ($ VSub_Name "$commit_sha4") ("\n") ("5772f42408c0dd6f097a7ca2d24de0e78d1c46b1 ") ($ VSub_Name "$commit_sha3") ("\n") ("283b48219aee9a4105f6cab337e789065c82c2b9 ") ($ VSub_Name "$commit_sha2") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [1570] ) ] ) (SimpleCommand words: [{(sort)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(expect_notes_cat_sort_uniq)} spids: [1577] ) ] ) ] negated: False ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:-1 arg_word:{(expect_log_cat_sort_uniq)} spids:[1616]) (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ($ VSub_Name "$commit_sha15") (" 15th\n") ("y notes on 15th commit\n") ("z notes on 15th commit\n") ("\n") ($ VSub_Name "$commit_sha14") (" 14th\n") ("y notes on 14th commit\n") ("\n") ($ VSub_Name "$commit_sha13") (" 13th\n") ("y notes on 13th commit\n") ("\n") ($ VSub_Name "$commit_sha12") (" 12th\n") ("y notes on 12th commit\n") ("\n") ($ VSub_Name "$commit_sha11") (" 11th\n") ("z notes on 11th commit\n") ("\n") ($ VSub_Name "$commit_sha10") (" 10th\n") ("x notes on 10th commit\n") ("\n") ($ VSub_Name "$commit_sha9") (" 9th\n") ("\n") ($ VSub_Name "$commit_sha8") (" 8th\n") ("z notes on 8th commit\n") ("\n") ($ VSub_Name "$commit_sha7") (" 7th\n") ("\n") ($ VSub_Name "$commit_sha6") (" 6th\n") ("\n") ($ VSub_Name "$commit_sha5") (" 5th\n") ("y notes on 5th commit\n") ("z notes on 5th commit\n") ("\n") ($ VSub_Name "$commit_sha4") (" 4th\n") ("y notes on 4th commit\n") ("\n") ($ VSub_Name "$commit_sha3") (" 3rd\n") ("y notes on 3rd commit\n") ("\n") ($ VSub_Name "$commit_sha2") (" 2nd\n") ("z notes on 2nd commit\n") ("\n") ($ VSub_Name "$commit_sha1") (" 1st\n") ("\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [1619] ) ] ) (C {(test_expect_success)} {(SQ <"merge y into z with \"cat_sort_uniq\" strategy => Non-conflicting 3-way merge">)} { (SQ <"\n"> <"\tgit notes merge --strategy=cat_sort_uniq y &&\n"> <"\tverify_notes z cat_sort_uniq\n"> ) } ) (C {(test_expect_success)} {(SQ <"reset to pre-merge state (z)">)} { (SQ <"\n"> <"\tgit update-ref refs/notes/z refs/notes/z^1 &&\n"> <"\t# Verify pre-merge state\n"> <"\tverify_notes z z\n"> ) } ) (C {(test_expect_success)} { (SQ < "merge y into z with \"cat_sort_uniq\" strategy configuration option => Non-conflicting 3-way merge" > ) } { (SQ <"\n"> <"\tgit -c notes.mergeStrategy=\"cat_sort_uniq\" notes merge y &&\n"> <"\tverify_notes z cat_sort_uniq\n"> ) } ) (C {(test_done)}) ] )