尝试克隆一个远程git存储库(裸),我得到了几个错误,如下所示,然后git停止。
error: unable to create file frozen/email/lamson/mymailserver/run/queue/mark.name/cur/1361115664.1929_1.vps-pool-55:2,S (Invalid argument)
如果我必须删除这些文件,这没关系,但如果我无法克隆,我找不到办法。
知道我能做什么吗?
答案 0 :(得分:13)
我猜你可能正试图在Windows机器上进行克隆。 Windows不允许文件名使用:
字符。
使用当前代码页中的任何字符作为名称,包括扩展字符集(128-255)中的Unicode字符和字符,但以下情况除外:
- 以下保留字符:
- < (小于)
- > (大于)
- :(冒号)
- “(双引号)
- /(正斜线)
- \(反斜杠)
- | (竖杆或竖管)
- ? (问号)
- *(星号)
- 整数值为零,有时也称为ASCII NUL 字符。
- 整数表示形式在1到31范围内的字符,但允许使用这些字符的备用数据流除外。有关文件流的更多信息,请参阅File Streams。
- 目标文件系统不允许的任何其他字符。
要解决此问题,您可能需要在非Windows系统上进行克隆并更正有问题的文件名。也许那里的一些Windows专家会有更好的解决方案。
答案 1 :(得分:2)
我反复引用我的回答,因为它也适用于此:https://stackoverflow.com/a/34515900/1012586
而不是
*
!kickstarter/parsers/data/kickstarter/campaigndetails/*
你需要像
这样的东西*
!frozen/email/lamson/mymailserver/run/queue/mark.name/cur/*
在.git/info/sparse-checkout
答案 2 :(得分:0)
git
将拒绝覆盖现有文件。再试一次,克隆到一个空目录。