2008-10-03 5 views
2

내 프로젝트의 현지화 된 텍스트에 사용하는 다중 열 텍스트 파일 (탭으로 구분)이 있습니다.다중 열 (탭으로 구분) 텍스트 파일에 SVN 병합과 관련된 문제가 있습니까?

대부분의 텍스트 편집기에서 누구나 쉽게 편집 할 수 있으므로이 형식을 선택했습니다.

내 메이크 파일은 그것을 내 앱에 직접 포함시키기위한 일련의 정의와 바이너리 데이터로 처리한다.

SVN 병합이 줄 단위 병합 만 수행하는지 또는 하위 줄 병합을 수행 할 수 있는지 알고 있습니까? 예를 들어

:

원본 파일 (번역되지 않은)가 포함되어 다음

DEFINE   ENGLISH GERMAN FRENCH 
STRING_YES  YES  *YES* *YES* 
STRING_NO  NO  *NO*  *NO* 

프랑스 tranlator 업데이트 그것을 :

DEFINE   ENGLISH GERMAN FRENCH 
STRING_YES  YES  *YES* OUI 
STRING_NO  NO  *NO*  NON 

그리고 독일 tranlator 업데이트 그것을 :

DEFINE   ENGLISH GERMAN FRENCH 
STRING_YES  YES  JA  *YES* 
STRING_NO  NO  NEIN  *NO* 

둘 다 결과를 다시 int int SVN으로 병합합니다. 그래서 그들은 각각의 다른 변경 사항을 덮어 씁니 까? 아니면 여러 줄을 여러 줄로 처리 할 수 ​​있습니까?

답변

3

라인별로.

  1. 나중에 커밋을 시도하면 '오래된 것'오류가 발생하고 업데이트하려고하면 변경된 행에 충돌이 발생합니다.
  2. 병합과 동일합니다. 나중에 병합하는 사람은 수동으로 충돌을 분류해야합니다.
+0

SVN에서 변경 사항을 잃지 않거나 충돌 한 문자열을 수동으로 복사하지 않고 충돌을 해결할 수있는 자동화 된 방법이 있습니까? – KPexEA

+0

불행히도, 아니오. 그것은 vcproj 파일 변경 사항을 병합 할 때 큰 고통입니다. –

0

SVN 병합은 줄 단위이므로 병합 개요를 작성하는 경우 충돌이 발생하여 수동으로 병합해야합니다. 그러나 적절한 병합 도구를 사용하면 번역사가 직접 처리 할 수 ​​있습니다.이 도구는 문자별로 차이점을 표시 할 수 있습니다.

TortoiseSVN은 사실상 Windows SVN 클라이언트이며 TortoiseMerge (screenshot)을 포함합니다.

리눅스에는 여러 가지 병합 도구가 있습니다. Meld은 현재 (그놈)이 가장 좋아하는 도구입니다.

이 기능을 사용하기 위해 기대되는 몇 가지 Mac clients도 있습니다.