Merge branch 'pw/add-p-recount'
"git checkout -p" needs to selectively apply a patch in reverse, which did not work well. * pw/add-p-recount: add -p: fix checkout -p with pathological contextmaint
						commit
						1b074e15d0
					
				|  | @ -972,7 +972,11 @@ sub coalesce_overlapping_hunks { | |||
| 			next; | ||||
| 		} | ||||
| 		if ($ofs_delta) { | ||||
| 			$n_ofs += $ofs_delta; | ||||
| 			if ($patch_mode_flavour{IS_REVERSE}) { | ||||
| 				$o_ofs -= $ofs_delta; | ||||
| 			} else { | ||||
| 				$n_ofs += $ofs_delta; | ||||
| 			} | ||||
| 			$_->{TEXT}->[0] = format_hunk_header($o_ofs, $o_cnt, | ||||
| 							     $n_ofs, $n_cnt); | ||||
| 		} | ||||
|  |  | |||
|  | @ -639,4 +639,12 @@ test_expect_success 'add -p patch editing works with pathological context lines' | |||
| 	test_cmp expected-2 actual | ||||
| ' | ||||
|  | ||||
| test_expect_success 'checkout -p works with pathological context lines' ' | ||||
| 	test_write_lines a a a a a a >a && | ||||
| 	git add a && | ||||
| 	test_write_lines a b a b a b a b a b a > a&& | ||||
| 	test_write_lines s n n y q | git checkout -p && | ||||
| 	test_write_lines a b a b a a b a b a >expect && | ||||
| 	test_cmp expect a | ||||
| ' | ||||
| test_done | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Junio C Hamano
						Junio C Hamano