Applying Upstream Updates
After running composer create-project, your application is an independent Git repository with no connection to the starter. When the starter ships fixes or new features, you can optionally cherry-pick those commits into your project.
Knowing When Updates Are Available
Section titled “Knowing When Updates Are Available”The starter:check command compares the version in your .starter-version.yaml file against GitHub releases and notifies you when newer versions exist. It runs automatically during composer install and composer update in local environments, so you’ll be notified without any extra effort.
If you want to check manually:
php artisan starter:checkWhen updates are available, the command shows each release with its date, a link to the release notes, and a comparison URL so you can review what changed.
Add the starter as a Git remote (one-time):
git remote add starter https://github.com/NIT-Administrative-Systems/northwestern-laravel-starter.gitgit fetch starterCherry-Picking Commits
Section titled “Cherry-Picking Commits”-
Fetch the latest starter commits
Terminal window git fetch starter -
Review what’s changed
Browse the starter’s commit log to find the commits you want:
Terminal window git log starter/main --oneline -
Cherry-pick specific commits
Apply individual commits to your current branch:
Terminal window git cherry-pick <commit-hash>Or apply a range of commits:
Terminal window git cherry-pick <oldest-hash>^..<newest-hash> -
Resolve any conflicts
If the cherry-pick encounters conflicts (because your project has diverged), Git will pause and let you resolve them:
Terminal window # Review conflictsgit status# Fix conflicting files, then continuegit add .git cherry-pick --continueIf a commit doesn’t apply cleanly and isn’t worth the effort, you can skip it:
Terminal window git cherry-pick --abort
- Review the release notes first. The comparison URL from
starter:checkshows exactly what changed. Some commits may depend on others or require configuration changes. - Cherry-pick in order when applying multiple related commits. Applying them out of sequence increases the likelihood of conflicts.
- Update
.starter-version.yamlafter you’re done sostarter:checkstops notifying you about releases you’ve already handled.
Alternative: Patch Files
Section titled “Alternative: Patch Files”If you prefer not to add the starter as a remote, you can apply changes from patch files:
# In a clone of the starter repo, generate patchesgit format-patch <from>..<to> --stdout > upstream-fix.patch
# In your project repo, apply the patchgit am upstream-fix.patch