有没有办法让Git在提交消息中不使用国际化字符串?

有没有办法让Git在提交消息中不使用国际化字符串?,git,internationalization,Git,Internationalization,我最近在MacOSX(10.9.5)上通过fink将Git更新为2.7.0。默认情况下,生成是国际化的。这对于通过Git status和类似命令与Git交互很好,但在执行提交时有点烦人,因为它适用于“重命名”、“修改”、“删除”之类的事情,我在编辑提交消息时习惯于不加注释。我不喜欢我的回购协议在数百次与英语的承诺后突然出现法语单词 在隐藏libintl.h文件之后,我做了一个“fink rebuild git”,结果是git没有国际化。问题是,在此期间,我已经习惯了--date=format:%

我最近在MacOSX(10.9.5)上通过fink将Git更新为2.7.0。默认情况下,生成是国际化的。这对于通过
Git status
和类似命令与Git交互很好,但在执行提交时有点烦人,因为它适用于“重命名”、“修改”、“删除”之类的事情,我在编辑提交消息时习惯于不加注释。我不喜欢我的回购协议在数百次与英语的承诺后突然出现法语单词

在隐藏
libintl.h
文件之后,我做了一个“fink rebuild git”,结果是
git
没有国际化。问题是,在此期间,我已经习惯了
--date=format:%c
在我为一个漂亮的日志使用的别名中,这会使
git日志
输出中显示的日期本地化

我想:

  • 仍然能够告诉git在
    git日志中显示日期…
    命令,以符合我的区域设置的方式

  • 但同时在预编辑的提交消息中没有预翻译“已删除”、“已修改”等词


  • 在git回购协议的本地克隆中修改
    po/fr.po
    是否是唯一的方法?但这将破坏通过fink进行安装的优势(因为我不关注Git的开发,我对在光盘上保留克隆没有多大兴趣)。

    这一自我回答有望被更好的、常规的回答所取代

    同时,由于缺乏更好的方法,我目前正在
    .bashrc

    alias gitfr="LANG=fr_FR.UTF-8 /sw/bin/git"
    alias git="LANG=en_US.UTF-8 /sw/bin/git"
    
    gitfr
    别名将在以下命令中为我服务:

    foo$ gitfr log --date=format:%c
    commit 22e01a35803f2b70a3e413d2fc9c774baffa01cc
    Author: jfbu <...>
    Date:   Mar  2 fév 10:18:10 2016
    
        OK
    
    foo$gitfr日志--日期=格式:%c
    提交22E01A35803F2B70A3E413D2FC9C774BAFFA01C
    作者:jfbu
    日期:2016年3月2日fév 10:18:10
    好啊
    
    请注意法语本地化日期。这是使用Git的唯一一个我喜欢看法语的地方。我的法语翻译有问题 它们将其转换为预先格式化的提交消息。这很烦人,因为也许将来有些单词会被翻译成上游的其他形式,或者我想自己进行分叉翻译,但是像
    Validation initiale
    这样的东西会进入提交历史记录。如果回购协议日后由其他开发商(而非法国开发商)维护,这将导致问题

    想象一下对称的情况,我正在检查一份在中国
    zh_CN
    本地化系统上维持了一段时间的回购协议。例如,一些提交是关于修改或删除的文件,提交者在编辑提交消息时未加注释,git准备了行来说明这一点。如果稍后我检查提交历史,发现有中文表意文字,我将无法立即知道文件是否被修改、添加或删除

    因此,仍在寻找解决方案:

  • 使用本地化git进行命令行交互

  • 但要用英语记录所有的历史


  • LANG=git
    有帮助吗?@ArkadiuszDrabczyk我已经试过了,但是做
    alias git=“LANG=en_US.UTF-8 git”
    会破坏我的
    git log--graph--abbrev commit--decoration…
    变体的
    --date format:%c
    (来自git帮助日志:使用--date=格式:%c以系统区域设置的首选格式显示日期。)但是,我可以使用别名
    alias gitcommit=“LANG=en_US.UTF-8 git commit”
    ,…是的,这可以解决我的问题,主要是git commit的问题。@ArkadiuszDrabczyk我之前的评论会有合并提交的问题,例如,它们无法逃避国际化。在我看来,确实需要某种方式让git在遵守w是的,但是所有与回购协议相关的东西都要用英语,因为无论如何,这个回购协议可能需要与其他母语的开发者共享。