OS X 上的 Git“文件名太长”错误

Dan*_*ich 5 git macos filenames long-filenames short-filenames

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

tor*_*rek 4

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 */
Run Code Online (Sandbox Code Playgroud)

该 393 字节名称是单个组件还是整个路径?(示例:"foo/bar/baz"有 3 个组件,每个组件 3 个字节,整个路径是 11 或 12 个字节,具体取决于您是否计算终止'\0'NAME_MAX这里的常量不计算终止'\0'。)