我在使用unicode为git-bash工作时遇到了一些麻烦(在Windows 7上).我尝试过许多事情都没有成功.虽然,我不太确定对此有什么责任,所以我可能在错误的方向上工作.
看来这应该是可行的,因为可以使用'chcp 65001'将cmd.exe的编码更改为unicode.
以下是我尝试过的一些事情(除了明显的浏览GUI中的配置选项).
在'.bashrc'中设置环境变量.我想这是行不通的,因为我觉得这是一个linux的事情.'locale'命令不存在.
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
Run Code Online (Sandbox Code Playgroud)从cmd.exe开始,使用'chcp 65001'将编码更改为unicode,然后启动git-bash.这会导致我在尝试捕获我的unicode测试文件时获得权限被拒绝.但是,在没有unicode的情况下捕获文件就可以了.如所示,退回到cmd.exe我仍然可以"捕获"该文件.使用我的默认编码(437)我可以用bash捕获文件(没有权限被拒绝但输出被捏造).
S:\>chcp 65001
Active code page: 65001
S:\>"C:\Program Files (x86)\Git\bin\sh.exe" --login -i
zarac@TOWELIE /z
cat /s/unicode.txt
cat: write error: Permission denied
zarac@TOWELIE /z
cat /s/nounicode.txt
abc
zarac@TOWELIE /z
L /s/unicode.txt
-rw-r--r-- 1 zarac Administ 7 May 18 10:30 /s/unicode.txt
zarac@TOWELIE /z
whoami
towelie\zarac
zarac@TOWELIE /z
exit
Z:\>type S:\unicode.txt
abc£
Run Code Online (Sandbox Code Playgroud)在启动shell时使用/ U标志(有道理它不起作用,因为它不是正确的,如果我理解正确,但它与unicode有关,所以我尝试了它).
C:\Windows\SysWOW64\cmd.exe /U /C "C:\Program Files (x86)\Git\bin\sh.exe" --login -i
Run Code Online (Sandbox Code Playgroud)由于我更喜欢使用Console2,我尝试将名为CodePage的值为65001(十进制)的双字值添加到[HKEY_CURRENT_USER\Console]下的Windows注册表以及[HKEY_CURRENT_USER\Console\Git Bash].这似乎与设置'chcp 65001'接受它是"自动"的效果相同.(http://stackoverflow.com/questions/379240/is-there-a-windows-command-shell-that-will-display-unicode-characters)
JPSoft的TCC/LE
PowerCMD
堆栈溢出
duckduckgo
ixquick …
问题如何在Windows上使用IntelliJ等IDE进行git提交?
如果你有兴趣,请阅读我在这里尝试的内容:
我主要跟随Github的指南.我确保在更改配置文件后不要忘记重启bash/IntelliJ.
.gitconfig是相同的.git config --global commit.gpgsign true(我正在使用git 2.12).我做了一个新的提交并验证它已签名git verify-commit HEAD当我尝试在IntelliJ中提交时,我gpg: cannot open tty 'no tty'发现IntelliT在尝试签名提交(GPG)并添加no-tty到我的C:\Users\username\.gnupg\gpg.conf文件并重新启动时未能提交更改.
然后我得到了gpg: Sorry, no terminal at all requested - can't get input似乎合理的错误,因为我刚添加了与没有终端有关的选项.像gpg:抱歉,没有终端请求 - 无法获得输入说解决方案是删除no-tty我希望不适用于我的情况.
第一个问题中的其他答案建议use-agent在gpg.conf文件中添加,这会导致额外的错误gpg: gpg-agent is not available in this session.等等,也许我需要设置gpg-agent.
我能找到的最佳Windows指南是Archlinux wiki(是的,右).它指定添加到C:/Users/username/.gnupg/gpg-agent.conf …