invalid byte sequence in UTF-8 in Windows10 and Windows Server 2016

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

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

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

调研方向

The exception is raised in win32_symlink? in lib/overcommit/utils/file_utils.rb around line 67, reached through symlink? and broken_symlink? in lib/overcommit/utils.rb and then store_modified_times in lib/overcommit/hook_context/helpers/stash_unstaged_changes.rb. Start by checking how that code reads the symlink or file output and what encoding it assumes on Windows. Reproducing it needs a Windows setup with a non-UTF-8 default encoding. Done means the pre-commit hook runs on Windows without the 'invalid byte sequence' error and the existing specs still pass.

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

描述

bug help wanted

Error:
C:\Users\artem\Desktop\TestOvercommit\overcommit>git commit -m "fix" invalid byte sequence in UTF-8 C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/overcommit-0.59.1/lib/overcommit/utils/file_utils.rb:67:in win32_symlink?'
C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/overcommit-0.59.1/lib/overcommit/utils/file_utils.rb:27:in symlink?' C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/overcommit-0.59.1/lib/overcommit/utils.rb:271:in broken_symlink?'
C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/overcommit-0.59.1/lib/overcommit/hook_context/helpers/stash_unstaged_changes.rb:65:in block in store_modified_times' C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/overcommit-0.59.1/lib/overcommit/hook_context/helpers/stash_unstaged_changes.rb:64:in each'
C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/overcommit-0.59.1/lib/overcommit/hook_context/helpers/stash_unstaged_changes.rb:64:in store_modified_times' C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/overcommit-0.59.1/lib/overcommit/hook_context/helpers/stash_unstaged_changes.rb:11:in setup_environment'
C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/overcommit-0.59.1/lib/overcommit/hook_runner.rb:42:in block in run' C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/overcommit-0.59.1/lib/overcommit/interrupt_handler.rb:86:in isolate_from_interrupts'
C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/overcommit-0.59.1/lib/overcommit/hook_runner.rb:30:in run' .git/hooks/pre-commit:87:in

'
Report this bug at https://github.com/sds/overcommit/issues`

.overcommit.yml:
PreCommit: RuboCop: enabled: true

please help me to solve the problem

主要语言
Ruby
星标
4k
派生
288
平均合并
2 天 4 小时
30 天内合并 PR
18

环境准备

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

从这里开始

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

sds/overcommit 的其他 Issue

查看 sds/overcommit 的全部 Issue

相似的 Issue

更多 Ruby Issue

把新 issue 发到你的邮箱

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