충돌하는 파일 의 일반 목록 만 있으면 됩니다.
다음보다 간단한 것이 있습니까?
git ls-files -u | cut -f 2 | sort -u
또는:
git ls-files -u | awk '{print $4}' | sort | uniq
나는 그것을 위해 편리한 alias
것을 설정할 수 있다고 생각 하지만 전문가가 어떻게하는지 궁금합니다. 쉘 루프를 작성하여 충돌 등을 자동으로 해결하는 등의 방법으로 사용합니다 mergetool.cmd
.
답변
git diff --name-only --diff-filter=U
답변
git diff --check
줄 번호를 포함하여 충돌 마커가 포함 된 파일 목록이 표시 됩니다 .
예를 들면 다음과 같습니다.
> git diff --check
index-localhost.html:85: leftover conflict marker
index-localhost.html:87: leftover conflict marker
index-localhost.html:89: leftover conflict marker
index.html:85: leftover conflict marker
index.html:87: leftover conflict marker
index.html:89: leftover conflict marker
답변
내 질문에 대답하려고합니다.
아니요, 질문에 나와있는 것보다 더 간단한 방법은 없습니다.
그것을 너무 많이 입력 한 후, 짧은 파일을 ‘git-conflicts’라는 실행 파일에 붙여 넣고 git에 액세스 할 수있게되었으므로 이제는 git conflicts
원하는 목록을 얻을 수 있습니다
.
업데이트 : Richard가 제안한 것처럼 실행 파일의 대안으로 git 별칭을 설정할 수 있습니다
git config --global alias.conflicts '!git ls-files -u | cut -f 2 | sort -u'
별칭보다 실행 파일을 사용하면 팀 구성원과 해당 스크립트를 공유 할 수 있습니다 (리포지토리의 bin 디렉토리에 있음).
답변
바보 같은 방법은 다음과 같습니다.
grep -H -r "<<<<<<< HEAD" /path/to/project/dir
답변
git status
“수정 됨”또는 “새 파일”대신 충돌이있는 파일 옆에 “수정 됨”을 표시합니다.
답변
git status --short | grep "^UU "
답변
이것은 나를 위해 작동합니다 :
git grep '<<<<<<< HEAD'
또는
git grep '<<<<<<< HEAD' | less -N