什么是合并友好格式用于输入文本标记

时间:2010-07-13 12:47:18

标签: svn excel merge tortoisesvn winmerge

我有一个excel列表(excel 2003),用户可以在其中输入令牌的翻译。它有3列 (关键,价值,语言)。它可以是键:Login.Header,值:“请登录网站”语言:en。

这很有效。我使用此文件在网站中生成语言特定图像,该网站使用大量图形文本。好处是用户可以在不安装新软件的情况下输入文本,编辑很好,并且可以通过我的python脚本轻松读取生成的文件。

有人认为我不喜欢:如果2个用户编辑文件并且有很多变化而不是合并会产生噩梦。

在我描述的领域是否有一个与excel一样好的编辑解决方案但是可以更容易地合并?

修改

到目前为止,答案解释了源控制系统如何在这种情况下提供帮助。但我已经有了SVN。

问题是关于文件格式。有些文件格式很容易与像winmerge这样的客户端合并(比如java或c#后端类的源代码),还有其他难以合并的文件格式(xml,代码生成生成的文件)。 xls - excel 2003的文件可以被区分,但它仍然不是很好的合并格式。

我认为有一个不同的应用程序(比如apple works,open office,excel 2010 ..)让我可以编辑一个表,但可以更容易地合并。

6 个答案:

答案 0 :(得分:3)

一种方法是将此Excel文件导出为XML或CSV。比使用Excel编辑文本类型文件而不是xls的默认二进制格式。

还考虑将一个大文件拆分成几个文件。这减少了两个人想要在同一个文件上工作的机会。

将其置于源代码管理之下,并向您的用户介绍源代码管理的基础知识。让用户负责合并文件。 SVN对于该任务非常敏感,因为它是一个集中式而非非常复杂的解决方案。为普通用户使用一个不错的GUI

使用集中式源代码控制,您可以引入锁定。它允许您在一个用户打开文件后拒绝写访问权限,这样只有一个用户可以同时编辑文件。

答案 1 :(得分:3)

  

在我描述的领域是否有一个与excel一样好的编辑解决方案但是可以更容易地合并?

可能不完全是预期的答案,但避免合并和冲突问题的最佳方法显然是避免合并。我会考虑使用协作编辑解决方案来避免处理文件的各种版本:

  • 如果您的所有用户都在同一个网络(LAN,VPN)上,那么首先想到的解决方案是将唯一的Excel文件放在网络共享上并激活Shared Workbook选项。这非常有效,如果发生冲突,系统会提示用户使用冲突解决对话框。

  • 如果这不是一个选项,那么您可以将电子表格放在Google文档上。 Google Docs非常适合协作工作(可以轻松配置谁可以访问文档,您可以看到当前连接的用户列表,协作版本正常工作)。然后只需导出电子表格以便在完成后进行处理。

  • 使用Gobby(多平台)等协作文本编辑器,处理原始CSV文件。这对用户来说不是很友好,特别是对于非技术人员而言,容易出错。我赞成以上解决方案。

答案 2 :(得分:1)

合并往往是一种痛苦。某些版本控制系统可以为您完成大部分工作,合并非冲突的更改并在两者都尝试更改同一令牌时提示用户。

Tortoise(SVN或Hg)具有合并功能,使其无痛。但我是以开发人员的身份发言 - 我在向非开发人员引入版本控制方面遇到了很多困难,即使是那些不使用CD托盘作为杯架的主管也是如此。 :)

您可以考虑将一个大文件拆分为多个文件。这减少了两个人想要在同一个文件上工作的机会。一旦用户打开文件,也有可能拒绝写访问,因此只有一个用户可以同时编辑文件。

答案 3 :(得分:0)

Excel的一个鲜为人知/使用的功能是“共享工作簿”功能。您可以在工具 - > 共享工作簿下找到它。只需点击“允许更改...”复选框,您就可以在“高级”标签中进行微调。

这是bar-none,是让多个用户对工作表进行编辑并在两种情况下工作的最佳选择:

  1. 每个人都会下载XLS的副本并进行编辑并上传回某个位置。然后,您可以将其与原始文件合并。
  2. 每个人都打开XLS的同一副本并同时进行编辑。然后,您可以合并任何/所有更改。

答案 4 :(得分:0)

让用户像现在一样使用Excel文件,但在版本控制下将数据保存在纯文本文件(可能是csv)中。那你只需要:

  • 一个小的python脚本,用于将文本文件转换为Excel以提供给用户。

  • 一个小的python脚本,用于将完成的Excel文件转换回文本。这需要一致地对数据进行排序(比如关键字和语言),以简化合并。

答案 5 :(得分:0)

任何类型的平面文件都很容易合并。

如果您想坚持使用Excel,那么编写一个将单元格内容导出到平面文件中的宏并不难。为了便于使用,您可以使宏还以原生Excel格式保存工作表以供将来编辑。如果您在工作表上放置了一个按钮并将其链接到宏,则用户可以通过单击按钮轻松地导出和保存文件。