我应该将 *.mo 翻译文件签入我的版本控制系统吗?
这是一个一般性问题。但特别是我正在使用 git 存储库开发 Django 项目。
一般答案是不在版本控制中存储生成的内容。
如果需要罕见的工具,您可以将其包含在 tarball 中,或者甚至拥有单独的存储库或仅包含那些生成的文件的断开分支(例如 git.git 存储库中的“html”和“man”分支)。
一般答案是:
如果您确实需要这些文件来编译或部署(在镜头中:“使用”)您的组件(从 VCS 查询的文件集),那么是的,它们应该存储在其中(此处:在 Git 中)。
对于其他类型的文件也是如此(例如项目文件)
.mo 文件 很特别:
django-admin.py compilemessages utility.
此工具运行所有可用的 .po 文件并创建 .mo 文件,这些文件是针对 gettext 使用而优化的二进制文件
含义:
所以具体答案不是那么明确:
对于所问的问题Jakub 的回答非常简洁。
但是有人可能会问:
那么我应该在哪里存储这些文件呢?我应该在每次部署代码时生成它们吗?
为此......这取决于。您可以将其部署在 tarball 中(如 Jakub 建议的那样),甚至更好 - 创建wheel或系统包(fedora 为 RPM,debian 为 DEB 等)。