我应该签入 *.mo 文件吗?

发布于 2024-07-23 09:31:46 字数 87 浏览 4 评论 0原文

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

这是一个一般性问题。 但特别是我正在使用 git 存储库开发 Django 项目。

Should I check in *.mo translation files into my version control system?

This is a general question. But in particular I'm working on Django projects with git repositories.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

断舍离 2024-07-30 09:31:46

一般答案是:
如果您确实需要这些文件来编译或部署(在镜头中:“使用”)您的组件(从 VCS 查询的文件集),那么是的,它们应该存储在其中(此处:在 Git 中)。< br>
对于其他类型的文件也是如此(例如 项目文件

.mo 文件 是特殊的:

django-admin.py compilemessages utility.

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

含义:

  • 您应该能够在每次需要它们时重建它们(实际上保证它们与其 .mo 文件同步)。 po couterparts)
  • Git 不太擅长二进制存储,这会避免它为每次更改存储完整版本

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

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

The general answer is:
if you do need those files to compile or to deploy (in shot: to "work" with) your component (set of files queried from your VCS), then yes, they should be stored in it (here: in Git).
This is the same for other kind of files (like project files for instance)

.mo files are particular:

django-admin.py compilemessages utility.

This tool runs over all available .po files and creates .mo files, which are binary files optimized for use by gettext

Meaning:

  • you should be able to rebuild them every time you need them (guarantying in effect that they are in synch with their .po couterparts)
  • Git is not so good with binary storage and that would avoid it to store a full version for every changes

So the specific answer is not so clear-cut:

  • if your po files are stables and will not evolve too often, you could definitively store the .mo file
  • you should absolutely store a big README file explaning how to generate mo from po files.
最好是你 2024-07-30 09:31:46

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

如果需要罕见的工具,您可以将其包含在 tarball 中,或者甚至拥有单独的存储库或仅包含那些生成的文件的断开分支(例如 git.git 存储库中的“html”和“man”分支)。

The general answer is to not store generated contents in version control.

You can include it in tarball, if it requires rare tools, or even have separate repository or disconnected branch with only those generated files (like 'html' and 'man' branches in git.git repository).

云淡月浅 2024-07-30 09:31:46

对于提出的问题Jakub 的回答非常简洁。

但有人可能会问:

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

为此......这取决于。 您可以将其部署在 tarball 中(如 Jakub 建议的那样),甚至更好 - 创建 pip 或系统包(fedora 为 RPM,debian 为 DEB 等)。

For asked question Jakub answer is pretty neat.

But one could ask:

So where should I store such files? Should I generate them every time I deploy my code?

And for that... it depends. You could deploy it in tarball (as Jakub sugested) or even better - create pip or system package (RPM for fedora, DEB for debian, etc.).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文