AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Git Workflow

skill-deadlymind-nanolama-git-workflow · by Deadlymind

Runs the daily branch to PR to merge loop safely on any git/GitHub repo — one branch per task, confirm the branch before every commit, rebase onto latest main before review, keep PRs small with a what/why/how-to-test description, and recover cleanly with amend, revert, and reflog. Use when starting a task branch, preparing or reviewing a pull request, deciding whether to amend or revert, undoing…

No reviews yet
0 installs
20 views
0.0% view→install

Install

$ agentstack add skill-deadlymind-nanolama-git-workflow

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-deadlymind-nanolama-git-workflow)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
24d ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Git Workflow? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Git workflow (branch to PR to merge)

When to use

Any time you move a change from your working tree into the shared history — cutting a task branch, opening or updating a PR, or digging yourself out after a bad commit. The shared branch (main) is sacred: it stays green and only receives reviewed, rebased work.

Pattern

Two guards hold the whole loop together:

  1. Confirm your branch before every commit. A shared checkout or a worktree can

switch under you between commands, so never assume — check, then commit.

  1. Rebase onto latest main before requesting review, so CI tests the code as it

will actually land, not a stale merge base.

Everything else — small PRs, honest descriptions, no reviews on red CI — falls out of protecting the shared branch.

Steps / idioms

  1. Branch per task, never commit straight to main. Name by intent

(feat/…, fix/…):

```bash git switch -c feat/tenant-filter main # branch off a fresh main

# ...work, then before EACH commit, confirm where you are: git branch --show-current # must NOT be main / a shared branch git add -p && git commit # message: see commit-message

git fetch origin git rebase origin/main # replay onto latest before review git push -u origin HEAD # (push --force-with-lease after a rebase) ```

  1. Keep PRs small. One reviewable idea per PR; if it grows, split it and stack the

branches (each PR targets the one below it) rather than shipping a 40-file wall.

  1. Write a description that answers what / why / how-to-test. Add before/after

screenshots for any visual change so a reviewer verifies without checking out.

  1. Don't request review on red CI. If you want early direction, open a Draft PR

and say what feedback you're after; move it to Ready only once CI is green.

Resolving conflicts

A three-way merge conflict means git couldn't reconcile two edits; resolve by intent, not by mechanically picking a side.

  • Lockfiles are generated, not merged. When uv.lock or pnpm-lock.yaml conflicts,

don't hand-edit the hashes — take the merged manifest (pyproject.toml / package.json), then regenerate: git checkout --theirs uv.lock && uv lock, or git checkout --theirs pnpm-lock.yaml && pnpm install --lockfile-only. A manually stitched lockfile installs a set nobody resolved.

  • Two migrations on one app — each branch added a migration to the same Django app,

so both share a parent and the app has a branched history. Don't renumber by hand: rebase onto latest main, then python manage.py makemigrations --merge to write a tie migration that depends on both leaves. Rebasing first keeps the merge node last.

  • Deleted-but-modified — one side deleted a file the other side changed, and git

can't guess your intent. Decide deliberately: git rm to honor the deletion, or git add to keep the modified version. Never let git checkout --ours/--theirs silently drop the decision.

After any resolution, re-run the build and tests before continuing the rebase — a clean git status only means the text merged, not that it works.

Adapt to your repo

Rename the shared branch if it isn't main (master, develop, a release branch). Match your host's push protection and the branch-name convention your team uses (prefixes, ticket ids). If PRs auto-run CI, confirm the required checks before marking Ready; if you use stacked PRs, pick a tool or a plain base-branch chain and stay consistent.

Gotchas

  • Amend only before you push. Rewriting a commit others may have pulled forces them

into a painful reset — once it's shared, add a new commit instead.

  • Undo merged history with git revert, never a force-push to a shared branch.

Revert makes a new inverse commit that preserves history; force-pushing main rewrites everyone's base.

  • A "lost" commit usually isn't. git reflog lists every HEAD you've been on;

find the sha and git switch -c rescue (or git cherry-pick it) to recover.

  • --force-with-lease over --force on your own branch — it refuses to clobber

commits you haven't seen (e.g. a teammate's push to your PR).

  • Rebasing a branch others share rewrites their base too; only rebase branches that

are yours.

See also

  • commit-message
  • code-review
  • ci-cd
  • migrations

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.