装 WIN10 的 PC 机,从 GitHub 上用 git clone 下载 Linux kernel 源码到本地。

git bash 提示:

error: invalid path 'drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c'

看了其他人的说法,这个是 WINDOWS 保留字,没法建立以此为名的文件(试了一下果然不行)。

再试了下

git rm --cached drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c

还是不起作用,貌似是因为现在所有文件处于缓存区的已删除状态。不太确定是不是这个原因,GIT 用的还不熟。

目前只能手动将除 aux 之外的文件都恢复下了。

 1 git  status > ../status
 2 cd ..
 3 cat status | grep deleted: | awk -F ' ' '{print $2}' > status
 4 # 需注意 2 次 status 内容是否对的上
 5 # 手动删除下 aux.c aux.h 共计 3 个文件
 6 cd -
 7 git reset HEAD --pathspec-from-file ../status
 8 git checkout  --pathspec-from-file=../status
 9 # 不知道为啥有几个文件遗漏了,手动 checkout 上
10 git commit -m 'init: del aux file for windows'

反正,删了这几个文件,想编译应该是不可能了,凑合着看代码吧。