我正在使用 pootle 来允许人们在 PHP Yii 项目中翻译 .po 文件。
一旦翻译者更新了 .po 文件,Pootle 就可以拉取和推送翻译。另外,我们有开发人员在网站上工作,他们也可能会更新翻译文件以添加更多要翻译的文本。
Yii 要求 .po 文件位于:
yii-project/protected/messages/en_gb/messages.po
Pootle 要求目录结构为:
pootle/yii-project/en_GB/messages.po
为了让 pootle 拉和推,.git 目录需要在 pootle/yii-project/.git 中。
我曾尝试使用 git sparse checkout,但这会将文件拉入 pootle/yii-project/protected/messages/en_gb/messages.po 不幸的是 pootle 没有收到。
我无法在其他地方提取存储库然后进行软链接,因为那时 pootle 将无法找到 .git 目录。
我真正想做的是一个目录的稀疏检出并将结果映射到另一个目录,即检出:
pootle/yii-project/protected/messages/ -> pootle/yii-project
我不想使用 git-subtree,因为我希望开发人员或翻译人员能够更新文件。我不想使用子模块,因为我不喜欢额外的拉动开销,我们希望开发人员在一次提交中包含与新功能有关的所有更改(而不是在主项目上的一次提交和一个在子模块上)。
有什么建议么?