2012-01-11 2 views
9

우리 diff (log, show 동안 바꾸기 검출 휴리스틱 일부 구성 옵션을 가질) 및 merge : 파일의 수는 복사를 수행 할 때/탐지 이름을 변경 고려해야 할 변경 임계치 (DIFF에 -M [N] --find - 이름 바꾸기 [= N] 등)과 관련된 이름 바꾸기가 병합

diff.renameLimit; git diff 옵션 -l과 동일합니다.

diff.renames git이 이름을 감지하도록 알려줍니다. 부울 값으로 설정하면 기본 이름 변경 감지가 가능합니다. "copies"또는 "copy"로 설정하면 복사본도 검색됩니다.

merge.renameLimit 병합 중에 이름 바꾸기 검색을 수행 할 때 고려해야 할 파일 수. 지정하지 않으면 diff.renameLimit 값이 기본값으로 사용됩니다.

-M [<N>] (또는 --find - 이름 바꾸기 [:

또한 우리는 다른 내용 파일 diff 대한 이름 바꾸기 (log, show)으로 간주되는 때를 제어 할 수있는 옵션을 가지고 = <n>]

이름 바꾸기. n을 지정하면 유사성 인덱스에 대한 임계 값입니다 (즉, 파일 크기와 비교하여 추가/삭제되는 양). 예를 들어 -M90 %는 파일의 90 % 이상이 변경되지 않은 경우 git이 삭제/추가 쌍을 이름 바꾸기로 간주해야 함을 의미합니다.

질문들 : 병합을위한 유사성 색인에 대한 임계 값을 제어하는 ​​방법은 무엇입니까? diff 및 일부 다른 사람은 명령 줄 옵션으로 사용할 수 있지만 merge은 사용할 수없는 것 같습니다. diff의 경우에도 구성 키가 없습니다. 어떤 이유로 merge에 해당되지 않습니까?

답변

4

당신은 재귀 병합 전략 (기본값) 이름 바꾸기 임계 값 옵션을 사용할 수 있습니다와 합병하는 경우 :

git merge -X rename-threshold=80 branch