Skip to content

ArtifactFS 1.0.0-rc.9

Pre-release
Pre-release

Choose a tag to compare

@elithrar elithrar released this 27 Jul 10:00
f0ed8cc

This release improves Git worktree compatibility and expands tested porcelain support across ArtifactFS mounts.

Improved git protocol support

  • git config --local core.filemode true, git config --local core.ignorecase false, and git config --local core.symlinks true now record ArtifactFS semantics instead of inheriting temporary clone filesystem probes. Git now detects executable-bit changes, treats paths as case-sensitive, and handles symlinks correctly.
  • The daemon no longer runs git update-index --fsmonitor or git update-index --fsmonitor-valid -z --stdin. Previously, these background index writes could race Git porcelain for index.lock; now ArtifactFS configures core.fsmonitor and lets Git own index updates.
  • git reset --hard, git clean -fd, git stash push --include-untracked / git stash pop, git merge --no-ff, git rebase, and git pull --ff-only now preserve and reconcile mounted content, modes, index state, and writable overlays.
  • git push origin HEAD:<ref> is now covered against a disposable upstream, including verification that the advertised remote ref matches the pushed commit.

Bug fixes

  • Preserve executable modes and symlink targets through git add, git commit, and git mv; keep an unstaged mode change intact when committing staged content.
  • Represent gitlinks as empty directory placeholders so git status --porcelain no longer reports uninitialized submodules as deleted.
  • Prevent git status --short and git diff --quiet from treating untouched blobs as modified when their size was not known during directory enumeration.
  • Preserve inode identity when git mv renames an open file, and correctly stale an overwritten destination inode.
  • Backfill source modes in existing overlays so the first reconciliation after upgrade does not discard metadata-only changes.