Skill: Update ButterCut
Updates ButterCut to the latest version. Uses git pull if available, otherwise downloads from GitHub.
Before updating, always make a backup and encourage the user to save it to a location outside the ButterCut directory. Verify the most recent backup exists and offer to copy it to their Desktop or iCloud Drive.
Workflow
- Check current version:
cat lib/buttercut/version.rb
- Check if git repo:
git rev-parse --git-dir 2>/dev/null
3a. If git repo exists:
Check for uncommitted changes
git status --porcelain
If changes exist, STOP and inform user to commit/stash first
Pull latest
git pull origin main bundle install
3b. If not git repo:
Download latest
curl -L https://github.com/barefootford/buttercut/archive/refs/heads/main.zip -o /tmp/buttercut-latest.zip unzip -q /tmp/buttercut-latest.zip -d /tmp/
Update files (excludes libraries/)
rsync -av --exclude 'libraries/' --exclude '.git/' /tmp/buttercut-main/ ./ bundle install rm -rf /tmp/buttercut-latest.zip /tmp/buttercut-main
- Verify:
cat lib/buttercut/version.rb bundle exec rspec
If tests fail, STOP and report issue. Show old and new version numbers.