Objective c git,国际化,;iOS字符串文件

Objective c git,国际化,;iOS字符串文件,objective-c,ios,git,localization,internationalization,Objective C,Ios,Git,Localization,Internationalization,我想知道这里的人们是否可以与国际化&git分享他们的过程。我与一个国际化团队合作,该团队每次发送.strings文件时都需要diff。以下是我对过程的看法: 在代码库上运行genstring以提取所有nsLocalizedString。这将生成一个.strings文件 将此.strings文件与同一文件的以前版本进行比较。上一个修订版映射到我们上次将.strings文件发送给国际化团队的时间。因此,diff应该包含上次发送.strings文件时项目中的所有字符串更改 现在我有了一个diff文件。

我想知道这里的人们是否可以与国际化&git分享他们的过程。我与一个国际化团队合作,该团队每次发送.strings文件时都需要diff。以下是我对过程的看法:

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

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

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

    如果有人能提出更好的方法来处理iOS应用程序的国际化过程,我洗耳恭听

    谢谢


    Sean

    如果您上传原始回购协议(包括英文字符串文件),则本地化的人可以分叉项目、调整字符串、提交到他们的分叉并打开拉取请求。您将其更改拉入并与原始文件合并。Git/GitHub为您完成了所有这些讨厌的合并

    如果字符串来自XIB,则可以再次使用GenString将repo中的新合并字符串文件与XIB集成


    来自Applingua的Rob(一家与Git合作的应用程序本地化机构!)

    不幸的是,与我一起工作的国际化团队对Git并不满意,因为它不能真正与他们当前的工作流程协同工作。还是谢谢你。