GIThub和非英语窗口?

时间:2011-03-21 19:11:08

标签: windows git github non-latin

您可能知道,Git Bash不支持非拉丁字符。这会在创建和使用SSH密钥时导致多次失败(因为路径是俄语)。

有解决方法吗?

1 个答案:

答案 0 :(得分:2)

这完全取决于您的HOME指向哪里?

请参阅Issue 491

总结我的测试,如果Windows用户名具有非ASCII字符:

  
      
  1. 如果HOME环境变量设置为ASCII路径,并且该路径存在,Git Bash会找到它(这是一种可能的解决方法)。

  2.   
  3. 如果没有HOME环境变量且“HOME”中的git/etc/profile常量设置为ASCII路径,并且该路径存在,Git Bash会找到它。行为似乎与1完全相同。

  4.   
  5. 如果HOME环境变量设置为非ASCII路径(如“C:\Höme”),则Git Bash无法找到它。它试图回退到C:\Documents and settings\[User Name]目录,但它找不到它,因为它破坏了[User Name]中的非ASCII字符。

  6.   
  7. HOME系统环境变量(或git/etc/profile中的常量)设置为完全ASCII路径后,Git Bash找到主目录,但它仍然会破坏用户名显示的消息。

  8.   
  9. 第一次运行Git GUI时,当我尝试暂存和提交文件时,会出现一条错误,指出提交消息中存在无效的utf-8字符。
      解决方法包括打开Edit->Options对话框并在相应的编辑框中输入有效的用户名和电子邮件地址
      似乎Git根据我的消息以及用户名和电子邮件撰写扩展消息。因为字段是空的,它似乎尝试从Windows用户名生成默认值,但它可能在我的系统上将其作为ISO-8859-1字符串检索,然后代码的另一部分期望它是有效的utf-8,但事实并非如此。

  10.   
  11. 如果用户名和电子邮件字段为空,我还会在编辑 - >选项对话框中尝试修改某些选项时遇到上面图像“error2.jpg”中显示的错误。但是,这种错误并不总是发生,我不确定导致它的确切步骤。

  12.   
  13. 在我设置HOME变量以及用户名和电子邮件地址后,我可以毫无问题地工作,除了下一个。

  14.   
  15. 非ASCII路径和文件名如果由本地Windows编码中的字符组成,则可以暂存和提交(我认为这是西班牙语的ISO-8859-1,英语和大多数西欧Windows系统)   所以,我已经能够暂存和提交名为“cañón.txt”的文件   但是,如果路径包含无法在本地Windows编码中表示的Unicode字符,如“C:\My tests\test五.txt”,则此类文件在Git GUI窗口中出现错误,并在我尝试时出现“no such file or directory”错误上演他们。

  16.