【问题标题】:git, internationalization & iOS string filesgit、国际化和 iOS 字符串文件
【发布时间】:2012-10-10 13:34:00
【问题描述】:

想知道这里的人们是否可以通过国际化和 git 分享他们的流程。我正在与一个国际化团队合作,该团队每次发送 .strings 文件时都需要差异。以下是我在流程方面的想法:

  1. 在代码库上运行 genstrings 以提取所有 NSLocalizedStrings。这将生成一个 .strings 文件。
  2. 将此 .strings 文件与同一文件的先前版本进行比较。上一次修订映射到我们上次将 .strings 文件发送给我们的国际化团队的时间。因此,差异应该包含自我们上次发送 .strings 文件以来项目中的所有字符串更改。
  3. 现在我有一个差异文件。使用脚本更改此差异文件以仅包含添加和修改。此脚本的输出将生成一个 .strings 文件。这是我们国际化团队想要的 .strings 文件。
  4. 国际化过程完成后,我留下了这个 .strings 文件的 n 个实例(每种语言一个)。我现在需要将这些 .strings 文件中的每一个都集成回项目中。
  5. 对于应用程序支持的每种语言,获取密钥并在原始 .strings 文件中搜索相同的密钥。如果密钥存在于原始 .strings 文件中,请将原始 .strings 文件中的值替换为 diff'ed 文件中的值。如果原始 .strings 文件中不存在该键,请将新的键/值对添加到原始 .strings 文件的末尾。

上面的数字三和五需要一些脚本,这引出了我的问题。

对于第三个问题,“git diff”是否可配置以生成仅包含添加或修改的 .diff 文件?有谁知道只包含添加或修改的命令是什么样的?如果 'git diff' 不够灵活,无法生成我需要的输出,是否有人知道某些脚本会产生所需的输出。

对于第五个问题,是否有人知道一些脚本已经解决了这个问题?

如果有人能提出更好的处理 iOS 应用国际化流程的方法,我会全力以赴。

谢谢,

肖恩

【问题讨论】:

    标签: objective-c ios git localization internationalization


    【解决方案1】:

    如果您上传包含英文字符串文件的原始存储库,那么任何进行本地化的人都可以分叉项目、调整字符串、提交到他们的分叉并打开拉取请求。您提取他们的更改并与您的原始文件合并。 Git/GitHub 为您完成了所有这些令人讨厌的合并。

    如果字符串来自 XIB,那么您可以再次使用 GENStrings 将您的存储库中新合并的字符串文件与您的 XIB 集成。

    Rob 来自 Applingua(一家使用 Git 的应用本地化机构!)

    【讨论】:

    • 不幸的是,与我合作的国际化团队对 git 并不满意,因为它不适用于他们当前的工作流程。还是谢谢你。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-16
    • 2022-06-22
    • 1970-01-01
    相关资源
    最近更新 更多