【问题标题】:Git terminal language changed after 'git checkout' to another branchGit 终端语言在“git checkout”后更改为另一个分支
【发布时间】:2019-05-10 23:55:16
【问题描述】:

最近我为我的项目创建了一些分支。似乎没有问题,但我意识到,每当我从 master 更改为使用 git checkout branch-name 时,它最终都会把我扔给我一堆韩文字母。

screnshot of my problem 我做错了什么?

提前致谢

[已解决] 所以在试图找出问题的原因之后,我决定运行brew uninstall git 并输入git 以确保它没有安装。但不知何故,它又回到了正确的英语。

【问题讨论】:

  • 你安装了韩文的 Git 吗?
  • @GenoChen 不,我什至不会说韩语
  • 请将答案作为答案发布;不要将它们编辑到您的问题中。
  • @melpomene 当然,但我要等 2 天后才能接受自己的答案。

标签: git macos terminal


【解决方案1】:

考虑到您can change the language displayed by Git,请在您的环境中检查变量的值:

  • LC_ALL

~/.bash_profile 中的 export LANG=en_US 应该会有所帮助。

【讨论】:

    【解决方案2】:

    [已解决] 所以在尝试找出问题的原因后,我决定运行 brew uninstall git 并键入 git 以确保它没有安装。但不知何故,它又回到了正确的英语。

    【讨论】:

      【解决方案3】:

      好的,让我们看看。如果 git 的语言发生了变化,如@vonc 所示,那是因为某些环境变量的值发生了变化,或者有人将 git 别名为 LC_ALL=kr git。怎么会这样? 好吧,每次有人运行命令时都会运行hooks。默认情况下,它们都没有安装,但它们可能在某些公司 repo 模板中;它们不能被检出,但需要有人把它们放在那里。您要查找的文件名为post-checkout,应位于.git/ 目录中。 正如您指出的in your answer,它回到英语的事实可能与它无关。环境变量可能已在别名中设置,并且仅在结帐终端中有效。

      基线是,一切都指向一个恶作剧。我会检查那些 git 钩子、别名和环境变量定义,以防万一。

      【讨论】:

      • 但是即使我是 repo 的创建者也有可能吗?这是一个私有的 laravel 项目,托管在私有 Github 的仓库中,并与我和另一个代码贡献者在本地同步。
      • 好吧,要设置环境变量或别名,您必须运行一些东西。您可以在结帐时运行某些东西的唯一方法是使用钩子。钩子不在 repo 中,所以它们必须在 repo 模板中(git hooks 的示例已经在每个 repo 模板中,但它们被禁用)。别名也不在 repo 中,所以它们一定是由系统管理员设置的。我想不出别的办法了……
      【解决方案4】:

      FWIW:为了查看我的 git 命令的环境,我添加了以下别名:

      git alias env '!env'
      

      所以输入git env 会给我通过git配置/别名/选项全局设置后的环境变量列表...

      在您的情况下,您可以检查您的 LANGLC_* 环境变量的值,并查看它们是否已从您的 shell 中更改。

      【讨论】:

        猜你喜欢
        • 2019-03-17
        • 2021-12-07
        • 2011-03-08
        • 2020-01-16
        • 1970-01-01
        • 1970-01-01
        • 2011-04-26
        • 2020-06-03
        • 1970-01-01
        相关资源
        最近更新 更多