¿Cómo le digo a Git que tiene movimientos / renombra incorrectos (falsos positivos)?

Estoy fusionando dos twigs en git, teniendo cada una una semana de trabajo y algunos de los files fueron movidos o renombrados y modificados.

Git parece get las cosas completamente mal en algunos casos y dice que el file a se movió al file b cuando en realidad no tienen ninguna relación.

Estoy teniendo bastantes falsos positivos (aproximadamente el 25%). Me gustaría influir en el algorithm que Git usa para determinar si un file fue movido, renombrado o es nuevo.

  • Me gustaría asignar una mayor prioridad a los nombres. (El file a se movió de la carpeta foo a la carpeta b) pero git insiste en que fue renombrado como file b en la carpeta foo – sin relación alguna
  • Me gustaría upload el índice de similitud por encima del cual Git considera que un file se renombrará / moverá

Sé que leí en algún lado que puedo hacer lo último y espero poder hacer lo primero también, pero mis habilidades de google me fallan hoy.

Me di count de esto también Creo que "–find-renames = 90" será más estricto que el pnetworkingeterminado.

De la documentation de git diff http://git-scm.com/docs/git-diff

-M [n] –find-renames [= n] Detecta los cambios de nombre. Si se especifica n, a es un umbral en el índice de similitud (es decir, cantidad de adiciones / eliminaciones en comparación con el tamaño del file). Por ejemplo, -M90% significa que git debería considerar un par de eliminar / agregar para cambiar el nombre si más del 90% del file no ha cambiado.

-C [n] –find-copies [= n] Detecta copys y cambia el nombre. Ver también –find-copies-harder. Si se especifica n, tiene el mismo significado que para -Mn.