Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

UnicodeDecodeError: 'charmap' codec can't decode byte 0x98

未关闭
#4 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
45/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
git, python
领域
cli, devtools

调研方向

应用 0001-add-file.patch、0002-some-changes-1.patch 和 0003-some-changes-2.patch,然后运行 git-explode master^ master,重现该故障。从 git_deps/detector.py 中调用 subprocess.check_output 的 blame_hunk 开始;当该命令能够处理报告中的包含俄文字符的 repository,且不会引发 UnicodeDecodeError 时,即表示完成。

由索引模型根据 Issue 内容生成。

描述

I can't run your extension. As I understand it doesn't work with russian letters. I got an error:

$ git-explode master^ master
Traceback (most recent call last):
File "C:/Users/zyrianovdv/AppData/Local/Programs/Python/Python36-32/Scripts/git-explode", line 10, in
sys.exit(run())
File "C:\users\zyrianovdv\appdata\local\programs\python\python36-32\lib\site-packages\git_explode\cli.py", line 68, in run
main(sys.argv[1:])
File "C:\users\zyrianovdv\appdata\local\programs\python\python36-32\lib\site-packages\git_explode\cli.py", line 64, in main
exploder.run()
File "C:\users\zyrianovdv\appdata\local\programs\python\python36-32\lib\site-packages\git_explode\exploder.py", line 39, in run
commits, deps_from, deps_on = self.get_dependencies()
File "C:\users\zyrianovdv\appdata\local\programs\python\python36-32\lib\site-packages\git_explode\exploder.py", line 67, in get_dependencies
detector.find_dependencies(rev)
File "C:\users\zyrianovdv\appdata\local\programs\python\python36-32\lib\site-packages\git_deps\detector.py", line 122, in find_dependencies
self.find_dependencies_with_parent(dependent, parent)
File "C:\users\zyrianovdv\appdata\local\programs\python\python36-32\lib\site-packages\git_deps\detector.py", line 147, in find_dependencies_with_parent
self.blame_hunk(dependent, parent, path, hunk)
File "C:\users\zyrianovdv\appdata\local\programs\python\python36-32\lib\site-packages\git_deps\detector.py", line 172, in blame_hunk
blame = subprocess.check_output(cmd, universal_newlines=True)
File "C:\users\zyrianovdv\appdata\local\programs\python\python36-32\lib\subprocess.py", line 336, in check_output
**kwargs).stdout
File "C:\users\zyrianovdv\appdata\local\programs\python\python36-32\lib\subprocess.py", line 405, in run
stdout, stderr = process.communicate(input, timeout=timeout)
File "C:\users\zyrianovdv\appdata\local\programs\python\python36-32\lib\subprocess.py", line 830, in communicate
stdout = self.stdout.read()
File "C:\users\zyrianovdv\appdata\local\programs\python\python36-32\lib\encodings\cp1251.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x98 in position 348: character maps to

I created simple repository for reproduction my case. You need apply patches: 0001-add-file.patch, 0002-some-changes-1.patch, 0003-some-changes-2.patch and then git-explode master^ master for reproduction.
patches.zip

主要语言
Python
星标
60
派生
3
PR 合并指标
30 天内没有已合并 PR

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

aspiers/git-explode 的其他 Issue

查看 aspiers/git-explode 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。