Git 'filename too long' OS X 上的错误
Git 'filename too long' error on OS X
我在 linux 上有一个由 git
跟踪的目录,我将其复制到 mac OS。在 git status
上,由于 filename: File name too long
错误,多个文件未被跟踪。一个文件名(及其相对路径)为 393 个字符。是否有 4096 个字符的限制(Windows 除外)? [Reference] 我的 core.longpaths
设置为真。 (core.precomposeunicode
也设置为 true,但可能无关紧要)。有什么建议吗?
OS X 将 NAME_MAX
(路径名组件中的字节数)设置为 255:
$ grep NAME_MAX /usr/include/sys/syslimits.h
#define NAME_MAX 255 /* max bytes in a file name */
#define CHARCLASS_NAME_MAX 14 /* max character class name size */
那个 393 字节的名称是单个组件还是整个路径? (例子:"foo/bar/baz"
有3个组成部分,每个组成部分3个字节,整个路径是11还是12字节取决于你算上结尾的'[=13=]'
。这里的NAME_MAX
常量不算终止 '[=13=]'
.)
其他选项是为您的项目更改符号链接配置,您不需要更改系统变量。
使用控制台并使用以下命令:
- git 克隆 https://github.com/xxx/xxx.git
- cd xxx
- git 配置 --list
- git 配置 core.symlinks false
- git结帐大师
- git 拉源大师
我的答案来自:
https://github.com/Urigo/IonicCLI-Meteor-WhatsApp/issues/4#issuecomment-382957742
我在 linux 上有一个由 git
跟踪的目录,我将其复制到 mac OS。在 git status
上,由于 filename: File name too long
错误,多个文件未被跟踪。一个文件名(及其相对路径)为 393 个字符。是否有 4096 个字符的限制(Windows 除外)? [Reference] 我的 core.longpaths
设置为真。 (core.precomposeunicode
也设置为 true,但可能无关紧要)。有什么建议吗?
OS X 将 NAME_MAX
(路径名组件中的字节数)设置为 255:
$ grep NAME_MAX /usr/include/sys/syslimits.h
#define NAME_MAX 255 /* max bytes in a file name */
#define CHARCLASS_NAME_MAX 14 /* max character class name size */
那个 393 字节的名称是单个组件还是整个路径? (例子:"foo/bar/baz"
有3个组成部分,每个组成部分3个字节,整个路径是11还是12字节取决于你算上结尾的'[=13=]'
。这里的NAME_MAX
常量不算终止 '[=13=]'
.)
其他选项是为您的项目更改符号链接配置,您不需要更改系统变量。
使用控制台并使用以下命令:
- git 克隆 https://github.com/xxx/xxx.git
- cd xxx
- git 配置 --list
- git 配置 core.symlinks false
- git结帐大师
- git 拉源大师
我的答案来自:
https://github.com/Urigo/IonicCLI-Meteor-WhatsApp/issues/4#issuecomment-382957742