귀하의 최종 목표에 다소 혼란 스럽지만 어쨌든 대답을 드릴 수 있다고 생각합니다.
병합이 충돌로 이어질 때, 즉 모든 것이 아직 커밋되지 않은 상태에서 양호한 변경 사항을보고 싶다면 git status --porcelain
을 사용해야합니다. 모든 파일과 상태 (병합 충돌 상태 포함)에 대한 기계 가독성 좋은 목록을 제공하며 잘 문서화 된 in the manpage입니다. 사용 사례에 따라 진행 (커밋)하기 전에 병합 결과를 검사 할 수 있도록 git merge --no-commit
을 사용할 수도 있습니다. git diff HEAD --numstat
을 사용하여 파일별로 추가/제거 된 줄 수를 기계가 읽을 수있는 보고서를 얻을 수도 있습니다.
당신이 사후 병합을 검사 할 경우, 그것은 git diff-tree
를위한 아주 좋은 사용 사례의 다음 -c
는 DIFF 병합에 알려줍니다
git diff-tree -c --numstat <commit>
가 부모에 대해 커밋하고 --numstat
당신에게 좋은 기계를 가져옵니다 이전과 같이 읽을 수있는 출력.
마지막으로 매우 자세한 충돌 보고서를 생성하려는 경우 --numstat
대신 -p
을 전달하여 완전한 패치 출력을 제공 할 수 있습니다. 이것은 gitk
에서 볼 수있는 종류의 패치입니다. 각 행의 시작 부분에 두 개의 문자가 있으며, 각 행에 대해 행이 추가/제거되었는지 여부를 나타냅니다. 한 부모로부터 오는 변경 사항에는 단 하나의 기호 (예 : '+ '
, ' -'
, 공백을 표시하기 위해 따옴표가 추가됨)가 있으며 충돌 해결의 일부로 수동으로 변경된 줄에는 두 개 (--
, ++
)가 표시됩니다. 당신이 정말로해야만한다면 당신은 그것을 스스로 파싱 할 수 있습니다. (불행하게도 나는 병합 커밋을 위해서 스테로이드에 --numstat
같은 것이 없다고 생각한다.)
'git diff --numstat branchA branchB'는 기계 소비를 위해 사용될 수있다. – knittl