go-gitdiff icon indicating copy to clipboard operation
go-gitdiff copied to clipboard

Support non-strict patch application

Open bluekeyes opened this issue 3 years ago • 0 comments

Currently, an Applier can only apply patches in "strict" mode, where line numbers and context lines must match exactly. Git supports a more flexible model when applying patches that allow them to work in more situations, such as cherry-picking changes to different branches:

  • Look for matches on different lines near the lines in the patch
  • Look for matches with fewer lines of context
  • Look for matches ignoring certain types of whitespace changes

I think copying Git's whitespace normalization could get complicated, but it would be nice to at least support exact matches on different lines or matches with reduced context.

bluekeyes avatar Oct 25 '21 00:10 bluekeyes