Skip to main content

release

Create a release proposal for the v2.x branch by cherry-picking commits from main

Ir a la instalación

Datos de origen

Repositorio
DataDog/pprof-format
Última actividad en el origen
8 de junio de 2026 a las 15:09
Idioma detectado de SKILL.md
inglés
Estrellas
8
Forks
4

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
release
description
Create a release proposal for the v2.x branch by cherry-picking commits from main
disable-model-invocation
true
argument-hint
[version (optional, auto-determined from PR labels)]
Create a v2.x release proposal. If a version is provided as $ARGUMENTS, use it. Otherwise, determine it automatically (see step 2). ## Prerequisites The `branch-diff` tool must be installed globally: ``` npm install branch-diff -g ``` ## Steps ### 1. Identify commits to cherry-pick Use the `branch-diff` tool to list commits on `main` not yet applied to `v2.x`: ``` branch-diff v2.x main ``` Review the output with the user. Skip: - Version bump commits (e.g. "Bump package version on to 3.0.0-pre") - Commits that would result in empty cherry-picks (already applied or superseded) Confirm the list of commits with the user before proceeding. ### 2. Determine the version number If the user didn't provide a version, determine it from PR labels. For each commit being cherry-picked, extract the PR number from the commit message (e.g. `(#42)`) and check its labels: ``` gh pr view <number> --json labels --jq '.labels[].name' ``` - If any PR has a `semver-minor` label, the release is a **minor** bump. - If all PRs have at most a `semver-patch` label, the release is a **patch** bump. Get the current version from the tip of `v2.x` (the most recent version commit message), then compute the next version accordingly. Confirm the version with the user. In the steps below, `$VERSION` refers to the determined version number. ### 3. Create a worktree Create a git worktree from the current repo, checking out a new branch `v$VERSION-proposal` based on the `v2.x` branch: ``` git worktree add ../pprof-format-v2 -b v$VERSION-proposal v2.x ``` All subsequent steps run in the worktree directory. ### 4. Cherry-pick commits Cherry-pick the agreed-upon commits in chronological order (oldest first): ``` git cherry-pick <hash1> <hash2> ... ``` If a cherry-pick has conflicts, stop and resolve with the user. ### 5. Create the version bump commit Bump the version in package.json and package-lock.json using npm, then commit: ``` npm version $VERSION --no-git-tag-version git add package.json package-lock.json git commit -m "v$VERSION" ``` ### 6. Push and create a PR Push the branch and create a PR targeting `v2.x`: ``` git push -u origin v$VERSION-proposal ``` Create the PR with `gh pr create --base v2.x`. The PR body should categorize the cherry-picked PRs by type, following this pattern: ```markdown # New features * #NNN # Improvements * #NNN # Bug fixes * #NNN # Other (build, dev) * #NNN ``` Only include sections that have entries. Reference PR numbers from the original commit messages.
Ver en GitHub