cherry-pick across renames [was: minutes of ESC call ...]

Miklos Vajna vmiklos at suse.cz
Tue Apr 16 01:19:28 PDT 2013


Hi Lionel,

On Tue, Apr 16, 2013 at 08:15:07AM +0200, Lionel Elie Mamane <lionel at mamane.lu> wrote:
> Great, how do you make it do that? That is _so_ not my experience,
> when cherry-picking commits touching reportbuilder/java/{com,org}
> to/from libreoffice-4-0 from/to master.

I tried that on a sample repo, so thanks for bringing this up. It seems
the git rename detection is O(N^2), so the default number of renamed
files is limited to avoid long merges.

I needed

git config diff.renameLimit 3000 (the default is 1000)

and then I could cherry-pick a sample change, affecting
reportbuilder/java/org/libreoffice/report/JobDefinitionException.java
from master to -4-0 without getting conflicts.

NOTE: the fact that git doesn't warn you about this config setting being
too low sounds like a bug to me, with

https://github.com/vmiklos/git/commit/1352990e431d21cca0d6cc0fcf778a2a104f3766

I get:

$ git cherry-pick 7b0ebb3
HEAD is now at eb5a62e Updated core
warning: inexact rename detection was skipped due to too many files.
warning: you may want to set your diff.renamelimit variable to at least 2596 and retry the command.
error: could not apply 7b0ebb3... test: missing modeline
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit'

Which is much more helpful. (Submitting that patch upstream is already in my
TODO. :-) )

Miklos
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20130416/07d2bb9b/attachment.pgp>


More information about the LibreOffice mailing list