svn이나 git을 사용하여 여러사람들과 함께 개발하는 사람이라면 때때로 로컬 파일과 서버의 파일이 분명 내용은 똑같은데 소스 update 하라고 뜨는 경험 한두번쯤은 있었을 것 같다. 막상 소스를 diff 해보면 파일 의 제일 첫번째 부분에 뭔가가 다르다는데 뭐가 다르다는것인지 이해가 가지 않는다. 이때 두 소스를 울트라에디트나 에디트플러스같은 도구를 사용하여 헥사코드로 열어보면 EF BB BF 라는 3 바이트가 둘 중 한 파일의 가장 앞부분에 써져 있을 것이다. 해당 부분이 바로 BOM(Byte Order Mark)인데, 이 BOM은 메모장과 같은 윈도우 에디터에서 해당 문서가 UTF-8 문서라는것을 표시하는 부분이다.(물론 utf-16 등의 다른 인코딩에서는 다른 형태의 바이트가 붙는다) 그런데 이..