Sync Skill
Quick git synchronization with remote repository.
Usage
Commands
/sync # Pull from origin main /sync develop # Pull from origin develop /sync upstream # Pull from upstream main (forks)
Korean Triggers
-
"동기화"
-
"원격에서 가져와"
-
"풀 받아"
Workflow
- Pre-sync Check
git status
If working directory has uncommitted changes:
Options:
-
Stash: git stash → sync → git stash pop
-
Commit first: Suggest using /cp
-
Discard: Only if user confirms with git checkout .
- Fetch and Pull
Default (origin main):
git pull origin main
With rebase (cleaner history):
git pull --rebase origin main
- Report Results
After successful sync:
Synced with origin/main
- 3 commits pulled
- Files changed: 5
- No conflicts
Handling Conflicts
If merge conflicts occur:
-
List conflicting files
-
Offer to help resolve
-
After resolution: git add <files> → git commit
Common Scenarios
Fork Workflow
Add upstream if not exists
git remote add upstream <original-repo-url>
Sync with upstream
git fetch upstream git merge upstream/main
Diverged Branches
If local and remote have diverged:
Option 1: Merge (default)
git pull origin main
Option 2: Rebase (cleaner)
git pull --rebase origin main
Option 3: Reset (destructive, ask user)
git fetch origin git reset --hard origin/main
Error Handling
Error Solution
"Uncommitted changes" Stash or commit first
"Merge conflict" Help resolve conflicts
"Remote not found" Check git remote -v