{"thread":{"id":"26842","subject":"git merge strategy for cherry picks","startedAt":"2011-03-23T19:06:20Z","lastAt":"2011-03-23T19:06:20Z","messageCount":1,"participants":["Joshua Jensen"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"164180","messageId":"4D8A44AC.20505@workspacewhiz.com","threadId":"26842","inReplyTo":null,"subject":"git merge strategy for cherry picks","fromName":"Joshua Jensen","fromEmail":"jjensen@workspacewhiz.com","sentAt":"2011-03-23T19:06:20Z","receivedAt":"2011-03-23T19:06:20Z","isPatch":false,"sender":{"key":"jjensen@workspacewhiz.com","avatar":"https://avatars.githubusercontent.com/u/111687?v=4"},"body":"In this thread, the question was asked about a merge with cherry picks \nand the reapplication of lines that had been removed: \nhttp://kerneltrap.org/mailarchive/git/2010/2/19/23857/thread\n\nConsider this scenario:\n\n     line line  line re-added\n      +    -    +!!\nA -- B -- C -- F  master\n   \\  |        /\n    - B' --...-    milestone\n\n\nI branch the milestone branch from A.\n\nThere is a fix, B, that needs to go in the milestone.  I cleanly \ncherry-pick it as B'; there are no conflicts.\n\nThe fix is decided to be bad and is removed in C.\n\nLater, I merge the milestone branch back to master.  The B 'fix' is \nre-added without conflict.\n\nHow can I correctly merge milestone into master without reintroducing \nthe B 'fix'?\n\nIn contrast, if I run, say, 'gitk --cherry-pick master...milestone', I \nsee that B' is not considered a difference between master and milestone.\n\nThanks.\n\nJosh\n"}]}