1.6 KiB
1.6 KiB
Create a PR, wait for CI, and squash-merge it on both GitHub and Gitea. This is the standard single-command workflow.
- If in a worktree (working directory contains
.claude/worktrees/), you are already on a feature branch — do NOT create a new one. Otherwise, create a new branch from main with a descriptive name. - Stage and commit all changes with a clean, semantic commit message. No Claude attribution lines.
- Fetch latest main and rebase:
git fetch origin main && git rebase origin/main.- If conflicts occur, abort the rebase (
git rebase --abort), analyze the conflicting files, write a plan to resolve them, and present the plan to the user before proceeding.
- If conflicts occur, abort the rebase (
- Push the branch to origin with
-u(use--force-with-leaseif already pushed). Also push to gitea. - Create a GitHub PR:
gh pr create. Reference related issues with#X. Only useCloses #Xif the PR fully resolves the issue. - Create a Gitea PR:
tea pr create --head <branch> --base mainwith the same title and description. - Wait for CI to pass: poll with
gh pr checksorgh run watch. If CI fails, report the failure and stop — do not merge. - Once CI passes, squash-merge on GitHub:
gh pr merge --squashwith a clean, semantic commit message including the PR number. No Claude attribution lines. - Squash-merge on Gitea:
tea pr merge <index> --style squashwith the same message. - Push main to gitea:
git push gitea main. - Clean up remote branches:
git push origin --delete <branch> && git push gitea --delete <branch>. - Prune refs:
git remote prune origin && git remote prune gitea. - Report both merged PR URLs.