Article General November 8, 2024 2 min read

Why on macOS Sequoia File Mode Changes to 10755 for Git Repos

Pax Durand

Technical Writer

November 8, 2024
2 min read

If you recently updated to macOS Sequoia, you might notice your files suddenly changing permissions to 10755 (often shown in Git as 100755). macOS Sequoia isn’t intentionally breaking your system—you are likely dealing with a Git tracking quirk, tightened security settings, or a network drive conflict.

The 100 prefix simply means it is a “regular file,” while 755 means the file now has read, write, and execute permissions. Here is why this is happening and how to fix it.

1. The Git Executable Bit Quirk (Most Common)

Git does not track complex UNIX file permissions. It only tracks one specific thing: whether a file is executable or not.

  • 100644: A standard file (read/write only).
  • 100755: An executable file or script.

If git diff suddenly shows old mode 100644 new mode 100755, a local tool or script modified the execution bits during the Sequoia update.

The Fix: Tell Git to ignore permission changes in your current project repository:

git config core.fileMode false

To apply this fix globally for every project on your Mac, run:

git config --global core.fileMode false

2. Sequoia’s Aggressive Gatekeeper Quarantine

macOS Sequoia introduced much stricter app and file verification protocols. When you download a ZIP archive, script, or binary outside of the official App Store, macOS slaps a hidden quarantine attribute (com.apple.quarantine) onto it.

When developer tools or package managers try to compile or move these flagged files under Sequoia, the OS can misinterpret the file system permissions and flip the mode to 100755.

The Fix: Strip away the Apple quarantine flag and force the file back to standard non-executable permissions via Terminal:

# Remove the quarantine block
xattr -d com.apple.quarantine /path/to/your/file

# Reset file to standard read/write permissions
chmod 644 /path/to/your/file

3. Shared Network Drives (SMB/Samba)

If your project files sit on an external drive, a virtual machine, or a network share (like an SMB mount), Sequoia’s updated file indexing system might be the culprit. Network shares often translate Windows or Linux permissions poorly to macOS, causing standard 644 files to falsely report as 755 executables. Running the Git config fix from step one will quickly solve this issue.

Leave a Reply

Your email address will not be published. Required fields are marked *