SVN合并在多列(制表符分隔)文本文件上是否有问题?

时间:2020-03-06 15:05:04  来源:igfitidea点击:

我有一个多列文本文件(制表符分隔),用于项目中的本地化文本。

我之所以选择这种格式,是因为大多数文本编辑器中的任何人都可以轻松地对其进行编辑(也是excel)。

我的makefile将其处理为一堆定义和二进制数据,以便直接包含在我的应用程序中。

我们是否知道SVN合并是仅逐行合并还是子行合并?

例如:

原始文件(未翻译)包含:

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

然后,法语翻译对其进行更新:

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

然后德语翻译对其进行更新:

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

然后,它们都将结果合并回int SVN,那么它们将覆盖彼此的更改,还是可以处理一行上的多个更改?

解决方案

它是逐行的。

  • 稍后尝试提交的人将收到"过时"错误,并且当他们尝试更新它时,将在更改的行中出现冲突。
  • 与合并相同。后来合并的人将不得不手动解决冲突。

SVN合并是逐行进行的,因此在我们概述的情况下,将创建冲突并且必须手动合并。但是,使用像样的合并工具,翻译人员自己可能可以处理此问题,这些工具可以逐字符显示差异。

TortoiseSVN实际上是Windows SVN客户端,其中包括TortoiseMerge(屏幕截图)。

Linux中有几种合并工具,Meld是我当前(gnome)的最爱。

我还希望有几个Mac客户端具有此功能。