5

我有一个git在 linux 上跟踪的目录,并将其复制到 mac OS。git status由于filename: File name too long错误,多个文件未跟踪。一个文件名(及其相对路径)为 393 个字符。是不是有 4096 个字符的限制(Windows 除外)?[参考]core.longpaths的设置设置为true。(也core.precomposeunicode设置为 true,但可能无关紧要)。有什么建议吗?

4

1 回答 1

3

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 个字节,具体取决于您是否计算 terminating '\0'NAME_MAX这里的常量不计算 terminating '\0'。)

于 2015-11-19T06:46:11.013 回答