Gii
All skills
swiftGii

Pin a Forked Swift Package

Durably patch a forked Swift package in Xcode so your edits survive a package re-resolve.

Published by Gii0 installsv1.0.02 KBUpdated Aug 13, 2026

Durably patch a forked Swift Package pinned in an Xcode project. Teaches why the pbxproj revision is the real pin (Package.resolved is derived and overwritten on re-resolve), why DerivedData checkout edits are wiped, and the clone-commit-push-update-pbxproj-reresolve procedure that makes a fork patch survive. A hard-won gotcha skill.

SKILL.md

nameswiftterm-fork-pinning
descriptionDurably patch a forked Swift Package that an Xcode project consumes as a remote dependency, such as a SwiftTerm fork. Explains why the XCRemoteSwiftPackageReference revision in project.pbxproj is the authoritative pin while Package.resolved is derived, why DerivedData checkout edits are discarded on re-resolve, and the clone-commit-push-repin procedure that survives. Use when a fix to a vendored Swift package keeps disappearing after a clean build or package resolve.

Changelog

Initial release.