我应该检查* .mo文件吗?

时间:2009-06-10 09:52:56

标签: version-control internationalization translation project-structure

我应该将* .mo翻译文件签入我的版本控制系统吗?

这是一个普遍的问题。但特别是我正在使用git存储库处理Django项目。

3 个答案:

答案 0 :(得分:13)

一般答案是:
如果你确实需要这些文件来编译或部署(在镜头中:“工作”)你的组件(从你的VCS查询的文件集),那么是的,它们应该存储在它里面(这里:在Git中)。登记/> 对于其他类型的文件(例如project files

也是如此

.mo files特别:

django-admin.py compilemessages utility.
  

此工具在所有可用的.po文件上运行并创建.mo文件,这些文件是为gettext使用而优化的二进制文件

含义:

  • 你应该能够在每次需要时重建它们(保证他们与他们的.po couterparts同步)
  • Git在二进制存储方面不太好,并且可以避免它为每次更改存储完整版本

所以具体答案不是那么明确:

  • 如果你的po文件是稳定的并且不会经常发展,你可以明确地存储.mo文件
  • 你应该绝对存储一个大的README文件,解释如何从po文件生成mo。

答案 1 :(得分:7)

一般的答案是在版本控制中存储生成的内容

如果它需要稀有工具,你可以将它包含在tarball中,或者甚至只有那些生成的文件(例如git.git存储库中的'html'和'man'分支)的单独的存储库或断开连接的分支。

答案 2 :(得分:0)

对于被问到的问题 Jakub answer 非常简洁。

但有人可能会问:

<块引用>

那么我应该在哪里存储这些文件?每次部署代码时都应该生成它们吗?

为此......这取决于。您可以将它部署在 tarball 中(如 Jakub sugested),或者甚至更好 - 创建 pip 或系统包(用于 Fedora 的 RPM,用于 debian 的 DEB 等)。