【git bash编码错误解决方案】启动conda环境时报错,其他terminal却正常

🔎嘿,这里是慰慰👩🏻‍🎓,会发各种类型的文章,智能专业,从事前端🐾

🎉如果有帮助的话,就点个赞叭,让我开心一下!🙋🏻‍♀️ ✨也可以关注评论收藏私信⭐️

要是没有回呢,那我大概就在上班,学习,摸鱼...

问题描述

之前在git bash启动conda虚拟环境都是好好的,不知道为什么这次出了问题,可能是因为前一天配置oh my posh修改了编码格式

复制代码
# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "D:\Anaconda\lib\site-packages\conda\exceptions.py", line 1132, in __call__
        return func(*args, **kwargs)
      File "D:\Anaconda\lib\site-packages\conda\cli\main.py", line 94, in main_sourced
        print(activator.execute(), end="")
    UnicodeEncodeError: 'gbk' codec can't encode character '\ue0b6' in position 50: illegal multibyte sequence

可以看到,是编码问题导致的,虽然我之前一直没有。。

解决指南

在Python开发过程中,编码问题是一个常见的困扰。特别是在Windows系统上,由于默认编码是GBK,而某些工具如GitBash使用UTF-8编码,这可能导致编码不一致的问题。

此外,一些Visual Studio Code (VSCode)插件,例如QML Preview,在运行时也可能遇到编码错误。本文将介绍如何通过设置系统环境变量来全局解决这些编码问题。

设置系统环境变量

方式1:手动设置

  1. 在Windows左下角点击搜索,输入"编辑系统环境变量"。

  2. 在弹出的窗口中,选择下方的"系统环境变量"。

  3. 点击"新建",在弹出的对话框中设置变量名和变量值。

    • 变量名:PYTHONUTF8
    • 变量值:1

方式2:使用PowerShell

也可以通过PowerShell来设置环境变量。请确保以管理员身份打开PowerShell,并运行以下命令:

我再教一遍啊,最后一遍啊!!!

以后只要看到以管理员身份打开XXX
Win +Q

输入powershell/git bash/...

右下角看见没

用管理员身份运行

点击以后会出来一个弹窗,《是否运行XXX》,点击"是"

你可以理解为,你现在要用管理员权限,电脑要和你再确定一遍

powershell 复制代码
[Environment]::SetEnvironmentVariable("PYTHONUTF8", "1", "Machine")

这条命令会将PYTHONUTF8环境变量设置为1,并应用于整个系统。

针对VSCode插件的编码错误

如果你在使用VSCode插件时遇到编码错误,通常重启VSCode就可以使环境变量的更改生效。这是因为VSCode在启动时会读取系统环境变量。

注意事项

  • 确保在进行环境变量设置时具有相应的权限,特别是在使用PowerShell时,可能需要管理员权限。
  • 环境变量的更改可能需要重启相关应用程序才能生效,例如VSCode。

🎉我都已经讲的那么详细了,截图那么多,不关注一下点个赞🩷吗~~~

相关推荐
Sapphire~2 小时前
odoo-049 Pycharm 中 git stash 后有pyc 文件,如何删除pyc文件
ide·git·pycharm
Willis_m6 小时前
Linux 服务器用 SSH 拉取多个 Git 工程
linux·服务器·git·ssh
1candobetter6 小时前
git如何将本地 dev 分支与远程 dev 分支同步
git
此方konata6 小时前
git常用命令
git
sky丶Mamba7 小时前
Conda激活环境无效
conda
serve the people7 小时前
解决osx-arm64平台上conda默认源没有提供 python=3.7 的官方编译版本的问题
开发语言·python·conda
雨休10 小时前
解决:EnvironmentNameNotFound: Could not find conda environment?
conda
Spider Cat 蜘蛛猫14 小时前
【一】浏览器的copy as fetch和copy as bash的区别
javascript·ajax·bash·逆向·fetch
yuanbenshidiaos14 小时前
讲讲git 和svn
git·svn
刃神太酷啦16 小时前
类和对象(1)--《Hello C++ Wrold!》(3)--(C/C++)
java·c语言·c++·git·算法·leetcode·github