Skip to content
Back to skills

Catch Up Pull

ASecurity

Use when returning to a repo after time away, when git status reports "up to date" but commits may have landed upstream, or when you need to safely absorb a large batch of upstream changes without losing local work.

  • 3 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 1, 2026
ai-agentsrustbashgit

Security analysis

A100/100

Scanned October 1, 2026

npx -y skills add williamblair333/Uncle-J-s-Refinery --skill catch-up-pull --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Catch Up Pull?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Catch Up Pull
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/williamblair333-catch-up-pull/badge)](https://www.skillsdirectory.com/skills/williamblair333-catch-up-pull)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md

---
name: catch-up-pull
description: Use when returning to a repo after time away, when git status reports "up to date" but commits may have landed upstream, or when you need to safely absorb a large batch of upstream changes without losing local work.
---

# Catch-Up Pull

## Overview

`git status` never contacts the remote — it compares against the **locally cached** remote ref. Always `git fetch` first or "up to date" is a lie.

## When to Use

- Session start after any absence (same day or longer)
- Healthcheck reports `cron-missing`, `stack-not-at-head`, or similar drift
- You suspect upstream has moved but aren't sure by how much
- You have uncommitted local changes and need to pull

## Steps

### 1. Fetch and assess — never trust local cache

git fetch
git status                          # now accurate
git log HEAD..origin/main --oneline # how far behind

### 2. Investigate orphaned local changes before doing anything

git diff                            # what's uncommitted
git stash list                      # any pre-existing stashes

If changes are present: identify what they are and whether they're still needed. **Never drop a stash without checking its contents** — it may be work that predates the last session and was never committed.

git stash show -p stash@{0}         # inspect before discarding

### 3. Stash, pull, restore

git stash push -m "pre-pull wip $(date +%Y-%m-%d)"
git pull --ff-only                  # fast-forward only; fail loudly if diverged

### 4. Run install scripts after a large pull

When many commits land (10+), check whether install scripts or skill links changed:

# Uncle J's Refinery pattern:
bash install-reliability.sh         # re-links new skills

Post-merge hooks will flag what needs re-running — read them before continuing.

### 5. Restore or drop stash

git stash pop                       # if changes are still needed
git stash drop stash@{0}            # if confirmed obsolete

### 6. Run session-end-checklist before closing

After absorbing upstream work, the session-end state has changed. Always re-run the checklist to ensure CHANGELOG, HANDOFF, and ROADMAP reflect the pull itself as session work.

## Common Mistakes

| Mistake | Fix |
|---------|-----|
| `git status` says "up to date" so you skip fetching | Always `git fetch` first — status lies without it |
| Dropping stash because "I don't remember what it was" | Always `git stash show -p` before drop |
| Skipping install scripts after a big pull | New skills won't link; hooks will remind you |
| Not running session-end after a catch-up pull | The pull itself is session work — document it |

## Red Flags

- "git status showed clean / up to date" — did you fetch first?
- Stash contents you don't recognize — inspect, don't assume
- Post-merge hook output you haven't read yet

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.