2013-07-04 3 views
0

eclipse와 eGit을 사용하여 Java 코드를 커밋합니다.Eclipse eGit은 덴마크 문자를 지원하지 않습니다 æøå (utf-8)?

하지만 내가 문자열 (또는 무엇이든)을,, ø 또는 commit로 변경하면 Github의 특수 문자로 변경됩니다. 내가 당길 때, 그 특수 문자를 반환하기 때문에 이것은 문제가됩니다!

강제로 git/eGit/Github에서 æ, ø 및 å을 사용할 수 있습니까? 암호화가 utf-8이 아닌 것 같습니까?

문제는 Windows 7 및 Linux (Ubuntu)에서 발생합니다. github (eclipse와 eGit을 통해, 또한 명령 줄을 통해 동일한 문제로)을 푸는 경우 발생합니다. Ø가?로 변경되었습니다. 기호. 이 일식에 보이는 방법은 다음과 은 다음과 같습니다

Element str = doc.createElement("Størrelse"); 

:

Element str = doc.createElement("Størrelse"); 

을하고 여기가 GitHub의에보고하는 방법입니다 난 다음 GitHub의에서 끌어 때

Element str = doc.createElement("St�rrelse"); 

나는이 얻을 것이다 github이 UTF-8로 인코딩하도록 강제 할 수 있습니까? 아니면 인코딩 문제를 해결할 수 있습니까?

+0

파일 이름, 커밋 메시지 및/또는 파일 내용에 UTF-8 문자를 사용합니까? 그것은 자식 명령 줄 클라이언트와 함께 작동합니까? 어떤 플랫폼? Windows/Linux/Mac? – nif

+0

Linux와 Windows 모두에서 동일한 문제가 발생합니다. 예 파일 이름, 커밋 메시지 및 파일 내용의 UTF-8 문자. 명령 줄을 사용하여 잠깐 테스트 해 보겠습니다. –

+0

명령 줄에 동일한 문제가 있습니다. 이것은 github에서 보는 방법입니다. 물음표 기호는 일식의 ø입니다. 요소 str = doc.createElement ("Stoerrelse"); + 요소 str = doc.createElement ("St rrelse"); –

답변

2

힘내는 파일을 바이트 스트림으로 처리합니다. 파일의 내용을 변경하지 않으며 인코딩 방법에 신경을 쓰지 않습니다.

또한 파일 이름을 바이트 스트림으로 처리합니다 (파일 이름을 정규화 된 macos로 분해하여 정상적인 형태로 분해하므로 거기에 몇 가지 해결 방법이 있습니다). 파일 이름도 변경되지 않습니다.

문제는 Eclipse에서 파일을 작성하는 방법, 파일을 github에 표시하는 방법 및 다른 Eclipse 설치에서 표시하는 방법에 있습니다. 두 컴퓨터 모두에서 utf-8 인코딩이 eclipse에 설정되어 있는지 확인하십시오.

그 말은 실제로 파일을 수정할 때 파일을 수정하는 방법이지만 실제로는 줄 바꾸기 (Windows 설치 관리자가 켜기 만하면되지만 그럴 수는 없습니다)를 수행하는 것입니다. "깨끗한"필터와 "얼룩 (smudge)"필터를 설정해야하고 그렇게하지 않으면 git은 파일의 내용을 만지지 않습니다.

+0

문제는 Windows에서 Eclipse를 사용하는 컴퓨터 중 하나가 utf-8 인코딩을 사용하지 않았다는 것입니다.이제는 모든 UTF-8 문자 만 찾아 볼 시간입니다. 고마워,이 대답은 내가 문제를 해결하는 방법과 그 이유를 이해하게했다. –

0

나는이 그냥 당신과 github에 대해 동의한다는 것을 의미 당신이 말할 때 "GitHub의에서"당신은 자신의 웹 인터페이스를 통해 파일을 볼의 생각과 파일을 로컬 파일 시스템

에 새 클론에서 확인 있다고 가정 파일 인코딩은 여러 플랫폼에서 발생하는 문제 중 매우 일반적인 (그러나 미묘한) 원인입니다.

나는 것이 좋습니다 당신 : 파일 이름에 아무것도하지만, 일반 ASCII를 사용하여

  • 마십시오.
  • Java 소스에서 비 ASCII 문자의 경우 \ uXXXX 구문을 사용하십시오.

지금 학습하면 나중에 많은 문제를 해결할 수 있습니다.

+0

문제를 더 명확하게 명확히하기 위해 제 질문을 편집했습니다. 메시지를 이해 했으므로 github에서 강제로 인코딩 할 수있는 방법이 없습니까? 또한 파일 이름에 이미 ASCII 문자 만 사용하고 있습니다. 그리고 ASCii가 아닌 문자에 대해 \ uXXXX 구문을 명확히 할 수 있습니까? –

+0

이 조언에 분명히 동의하지 않습니다. 요즘 유니 코드는 모든 것을 이해하며 Java에서는 심지어 지정되어 있습니다. 올바른 인코딩을 설정해야합니다. –

+0

@janhudec 느낌. 원래 경험 한 프로그래머가 테스트하지 않은 것을 할 때 일이 깨지는 경향이 있습니다. –

2

이것은 100 % git 문제가 아닙니다. 힘내는 어떤 식 으로든 파일의 인코딩을 만지지 않는다.

이것은 GitHub 디스플레이 문제 일 수 있습니다 (참고 : GitHub는 리포의 내용을 변경하지 않으므로 인코딩도 변경할 수 없음). 그러나 고객이 문제를 겪고 있기 때문에 GitHub가 여기에있는 것이 아닙니다.

문제는 아마도 편집기로 인해 발생했을 수 있습니다. 파일 내용은 쓰기시 UTF-8로 인코딩 된 것으로 보이지만 파일을 여는 데 사용하는 편집기는 라틴어 -1로 가정합니다. 에디터 설정을 확인하십시오.

0

끝 부분에서 완벽하게 작동하는 메타를 추가합니다. 나는이 질문에 답을 얻었지만 정확히 알고 싶지 않았기 때문에 다른 사람들이 사용할 수 있도록이 게시물을 보여 주었다고 생각했습니다.

<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> 
+1

이것이 추가되어야하는 곳을 추가하면 대답이 향상됩니다. – Calon

관련 문제