feat: add setup.sh and xcode.gitignore for app repo initialization
setup.sh copies PROMPT.md and .gitignore into a new app repo with one command. xcode.gitignore covers Xcode, SPM, CocoaPods, code signing, and secrets. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
ef826111b6
commit
63377d3ddf
39
setup.sh
Executable file
39
setup.sh
Executable file
|
|
@ -0,0 +1,39 @@
|
|||
#!/usr/bin/env bash
|
||||
#
|
||||
# setup.sh — Initialize a new iOS/macOS app repo with the workflow template files.
|
||||
#
|
||||
# Usage:
|
||||
# ~/Documents/FORGEJO/XCode-Claude-Workflow/setup.sh [app-name]
|
||||
#
|
||||
# Run this from inside your new (empty or freshly cloned) app repo directory.
|
||||
# It copies PROMPT.md and .gitignore, then makes an initial commit.
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
APP_NAME="${1:-$(basename "$PWD")}"
|
||||
|
||||
# Verify we're in a git repo
|
||||
if ! git rev-parse --is-inside-work-tree &>/dev/null; then
|
||||
echo "Error: Not inside a git repository."
|
||||
echo "Create/clone your repo first, cd into it, then run this script."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Copy template files
|
||||
echo "Setting up $APP_NAME..."
|
||||
|
||||
cp "$SCRIPT_DIR/PROMPT.md" ./PROMPT.md
|
||||
echo " Copied PROMPT.md"
|
||||
|
||||
cp "$SCRIPT_DIR/xcode.gitignore" ./.gitignore
|
||||
echo " Copied .gitignore"
|
||||
|
||||
# Stage and commit
|
||||
git add PROMPT.md .gitignore
|
||||
git commit -m "chore: initialize $APP_NAME with XCode-Claude-Workflow template"
|
||||
|
||||
echo ""
|
||||
echo "Done! Next steps:"
|
||||
echo " 1. Open Claude Code: claude"
|
||||
echo " 2. Start the workflow: @PROMPT.md execute this prompt"
|
||||
48
xcode.gitignore
Normal file
48
xcode.gitignore
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
# Xcode
|
||||
*.xcodeproj/xcuserdata/
|
||||
*.xcworkspace/xcuserdata/
|
||||
*.xcuserstate
|
||||
*.xcscmblueprint
|
||||
*.xccheckout
|
||||
|
||||
# Build output
|
||||
build/
|
||||
DerivedData/
|
||||
*.ipa
|
||||
*.dSYM.zip
|
||||
*.dSYM
|
||||
|
||||
# Swift Package Manager
|
||||
.build/
|
||||
.swiftpm/
|
||||
Package.resolved
|
||||
|
||||
# CocoaPods (if used)
|
||||
Pods/
|
||||
|
||||
# Carthage (if used)
|
||||
Carthage/Build/
|
||||
Carthage/Checkouts/
|
||||
|
||||
# Fastlane
|
||||
fastlane/report.xml
|
||||
fastlane/Preview.html
|
||||
fastlane/screenshots/**/*.png
|
||||
fastlane/test_output
|
||||
|
||||
# Code signing
|
||||
*.mobileprovision
|
||||
*.provisionprofile
|
||||
|
||||
# Secrets and environment files
|
||||
*.env
|
||||
.env.*
|
||||
|
||||
# OS files
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# Claude Code local settings
|
||||
.claude/settings.json
|
||||
.claude/settings.local.json
|
||||
.chat-history/
|
||||
Loading…
Reference in a new issue