There's a moment when you clone or pull a repository on Windows and Git throws an error like this:
error: unable to create file some/very/deeply/nested/path/to/a/file.ts: Filename too long
Nothing wrong with your code, nothing wrong with the repo. It's Windows.
Why does this happen?
Windows has a default path length limitation of 260 characters (the infamous MAX_PATH). Git operations that create files with a full path longer than that — cloning, checking out, pulling — will fail with this error. Repositories with deeply nested folder structures (think node_modules, or generated code) hit this constantly.
The fix: enable long paths in Git
Git has a config setting for exactly this: core.longpaths. You have two ways to set it, depending on your rights on the machine.
System-wide (requires Administrator privileges):
git config --system core.longpaths true
User-level (no Administrator required):
git config --global core.longpaths true
If you don't have admin rights on your machine, go for the --global version. It applies to your user account only, but that's usually enough to get you unblocked.
Remark: this only tells Git to support long paths. It doesn't automatically fix everything — Windows itself also needs long path support enabled at the OS level for some tools and APIs to fully cooperate.
Enabling long paths at the Windows level
Git's core.longpaths setting works around the limitation for Git's own file operations, but if you want long paths supported system-wide (other tools, Explorer, etc.), you also need to enable it in Windows itself:
- Open the Group Policy Editor (
gpedit.msc) — Enterprise/Pro editions only. - Go to
Computer Configuration > Administrative Templates > System > Filesystem. - Enable "Enable Win32 long paths".
Or via the registry, if Group Policy isn't available (e.g. Windows Home):
reg add "HKLM\SYSTEM\CurrentControlSet\Control\FileSystem" /v LongPathsEnabled /t REG_DWORD /d 1
A reboot is required for this to take effect.