편집 : 문자 인코딩이 엉망이 아닙니다. 지식을 공유하고 다른 사람들이 같은 실수를하는 것을 피하기 위해 여전히 여기에 있습니다.git이 문자 인코딩을 엉망으로 만들 수 있습니까?
컨텍스트 : 내 기업은 SVN 저장소를 사용합니다. 이 저장소와 상호 작용하는 클라이언트로 git-svn을 사용하고 있습니다. 프로젝트의 모든 텍스트 파일은 Windows 기본 인코딩 (cp -....)으로 인코딩되어 있어야합니다. 나는 git-extensions을 사용하고 때로는 git 조종사에게 명령어 라인을 사용한다.
내가 한 일 : 지난 3 일 동안 나는 새로운 기능을 연구 중이었고 여러 가지 커밋을 수행했습니다. 마지막으로 나는 이러한 모든 커밋을 대화 형 리베이스를 사용하여 하나의 콘솔로 압축 한 다음 git svn dcommit을 사용하여 단일 커밋으로 svn 저장소의 모든 것을 푸시합니다.
그 다음에 일어난 일 : 한 동료가 수정 한 파일과 내 커밋 이후 새 파일에서 모든 악센트가 엉망이되었다고 말했습니다. 이전에 git + svn을 설치 한 상태에서 동일한 저장소에있는 악센트가있는 텍스트 파일을 이미 커밋 한 적이 있었으며이 문제에 처음으로 직면했습니다.
내 조사 : ++ 메모장 파일을 열어 그들을 볼 (Windows 기본 및 UTF-8 포함) 최신 인코딩 시도 : 나는 조사하기 위해 다음과 같은 일을했다 그들 중 누구도 제대로 악센트를 표시하지 수를, 다른 액센트는 항상 이상한 문자 모양의 동일한 순서로 렌더링됩니다.
임시 해결 방법 : 신속하게 git 확장을 사용하여 되돌리기 커밋을 만들고이를 "dcommited"했습니다.
질문 : 내 기업의 SVN 저장소는 OK,하지만 지금은 해결하기 위해 다음 두 가지 문제가있다 :
- 는
- 은 SVN에서 내 작품을 검색 액센트 문자로 무슨 일이 있었는지 이해 (악센트가있는 모든 문자를 수동으로 검토하지 않고 가능하다면)
누구든지 단서를 제공 할 수 있습니까?
당신이 당신의 텍스트 파일의 내용이 경로가 아닌 변경된 것을 의미합니까;
+1
는 "자식 reflog"해피 악센트 고정하는? (나는 바이트 배열과 같은 파일들로 git-svn이 작동한다는 것을 알고 있기 때문에 물어 본다.) git-svn의 어떤 버전을 사용합니까? –
네, 작동 중에 변경된 파일의 내용이지 경로가 아닙니다. 새 버전이 출시 되 자마자 업데이트 중이지만 지금은 작동하지 않습니다. 가능한 한 빨리 git 및 git 확장의 정확한 버전 번호를 알려 드리겠습니다. –
git-svn dcommits가 저장소를 변경하면 다음 작업이 수행됩니다. –