跳到正文
cccskills
免费在 GitHub 公开

push

Push current branch changes to origin and create or update the corresponding pull request; use when asked to push, publish updates, or create a pull request.

中文简介正在准备中。当前显示原文说明。

集成工具GitHubPlaywright
查看安装方法

包含的文件(1)

  • SKILL.md2.4 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Push

Prerequisites

  • gh CLI is installed and available in PATH.
  • gh auth status succeeds for GitHub operations in this repo.

Goals

  • Push current branch changes to origin safely.
  • Create a PR if none exists for the branch, otherwise update the existing PR.
  • Keep branch history clean when remote has moved.

Related skills

  • pull: use this when push is rejected or the branch is stale.

Validation gate

Run the checks that match the repo's normal contribution flow before pushing:

bun run lint
bun run test

Run browser coverage too when the change is user-facing, routing-related, or otherwise browser-observable:

bun run test:e2e

If Playwright browsers are missing, install them first:

bunx playwright install --with-deps chromium

Steps

  1. Identify the current branch and confirm the remote state.
  2. Run the required validation for the scope.
  3. Push the branch to origin with upstream tracking if needed.
  4. If push is rejected because the remote moved, run the pull skill, rerun validation, and push again.
  5. If push fails because of auth, permissions, or repo rules, stop and surface the exact error.
  6. Ensure a PR exists for the branch:
    • If no PR exists, create one.
    • If a PR exists and is open, update it.
    • If the current branch is tied to a closed or merged PR, create a fresh branch and PR.
  7. Write or update a clear PR title and body that match the current diff.
  8. Reply with the PR URL from gh pr view.

Commands

branch=$(git branch --show-current)

git push -u origin HEAD

pr_state=$(gh pr view --json state -q .state 2>/dev/null || true)
if [ "$pr_state" = "MERGED" ] || [ "$pr_state" = "CLOSED" ]; then
  echo "Current branch is tied to a closed PR; create a new branch + PR." >&2
  exit 1
fi

pr_title="<clear PR title written for this change>"
if [ -z "$pr_state" ]; then
  gh pr create --fill --title "$pr_title"
else
  gh pr edit --title "$pr_title"
fi

gh pr view --json url -q .url

Notes

  • Do not use --force; use --force-with-lease only when local history was intentionally rewritten.
  • Distinguish sync problems from auth or permission problems. Use the pull skill for the former and surface the latter directly.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

commit

免费

Create a well-formed git commit from current changes using session history for rationale and summary; use when asked to commit, prepare a commit message, or finalize staged work.

中文简介正在准备中。当前显示原文说明。

sushaantu/boxento1542026年10月8日 更新

land

免费

Land a PR by monitoring conflicts, resolving them, waiting for checks, and squash-merging when green; use when asked to land, merge, or shepherd a PR to completion.

中文简介正在准备中。当前显示原文说明。

sushaantu/boxento1542026年10月8日 更新

linear

免费

Use Symphony's `linear_graphql` client tool for raw Linear GraphQL operations such as comment editing and status updates.

中文简介正在准备中。当前显示原文说明。

sushaantu/boxento1542026年10月8日 更新

pull

免费

Pull latest origin/main into the current local branch and resolve merge conflicts (aka update-branch). Use when Codex needs to sync a feature branch with origin, perform a merge-based update, and resolve conflicts safely.

中文简介正在准备中。当前显示原文说明。

sushaantu/boxento1542026年10月8日 更新

查看 sushaantu 的全部技能

报告此技能的问题