К основному содержанию
скилл GitHub Copilot официальный · GitHub

rebase-current-branch — скилл для GitHub Copilot: что делает

Скилл переносит текущую ветку на свежую ветку по умолчанию через git rebase. Пригодится, когда нужно подтянуть изменения из main или master перед ревью без риска потерять правки.

Установить в GitHub Copilot · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add github/awesome-copilot --skill rebase-current-branch
Открыть на GitHub

Что делает rebase-current-branch

Скилл выполняет rebase текущей ветки через инструмент Bash. Сначала он запускает git status и определяет активную ветку. Если в рабочей директории есть незакоммиченные файлы, скилл остановится и запросит ваши указания. Он не прячет файлы в stash самостоятельно.

Затем определяется удаленный репозиторий и имя основной ветки — main, master или другое значение. Скилл скачивает свежие данные через git fetch и запускает git rebase. Если возникнут конфликты, агент не станет стирать код через git reset --hard или пропускать коммиты. Он покажет файлы с конфликтами и подождет ручного разбора.

После переноса скилл предложит выполнить тесты и линтеры проекта, но никогда не сделает git push без отдельной команды. Этот скилл стоит ставить тем, кому нужен предсказуемый перенос правок без опасных сокращений в консоли.

Какие задачи решает

  • обновить рабочую ветку актуальными коммитами из main или master
  • предотвратить случайный rebase поверх незакоммиченных изменений
  • безопасно разрешить конфликты слияния без потери коммитов
  • запустить pre-commit хуки и тесты после переноса ветки

Примеры запросов агенту

  • Обнови мою ветку из main
  • Сделай rebase текущей ветки на default branch
  • Синхронизируй ветку с upstream перед ревью

Как установить rebase-current-branch

1Через Skills CLI (Vercel)

npx skills add github/awesome-copilot --skill rebase-current-branch

2GitHub CLI

gh skill install github/awesome-copilot rebase-current-branch

3Вручную: положить файлы

.github/skills/rebase-current-branch/SKILL.md

Из того же набора554

Весь набор →
git-commit официальный github Скилл разбирает изменения Git, выбирает связанные файлы и создаёт коммит в формате Conventional Commits. Пригодится, когда нужно закоммитить одну или несколько логических частей изменений. GitHub Copilot 47 165установок excalidraw-diagram-generator официальный github Скилл превращает описание на обычном языке в диаграмму Excalidraw. Подойдёт, когда нужно показать процесс, связи между объектами или устройство системы. GitHub Copilot 31 639установок multi-stage-dockerfile официальный github Скилл помогает создавать многоэтапные Dockerfile для разных языков и фреймворков. Пригодится, когда важны размер и состав runtime-образа. GitHub Copilot 29 688установок documentation-writer официальный github Скилл для создания технической документации по фреймворку Diátaxis: туториалы, гайды, справки и объяснения. Предлагает структуру перед написанием. GitHub Copilot 27 757установок prd официальный github Собирает из идеи структурированный PRD с пользовательскими историями, техническими требованиями и рисками. Подходит для планирования новых функций, в том числе с AI. GitHub Copilot 24 035установок refactor официальный github Скилл помогает менять структуру кода без изменения внешнего поведения. Подойдёт для постепенной уборки сложных функций, дублирования и кодовых запахов. GitHub Copilot 22 321установок java-springboot официальный github Задаёт практики разработки Spring Boot-приложений: от структуры проекта до тестов и безопасности. Пригодится, когда Copilot пишет или проверяет Java-код. GitHub Copilot 21 272установок create-readme официальный github Скилл изучает проект и создаёт структурированный README.md. Подойдёт, когда документацию нужно собрать по коду и файлам проекта. GitHub Copilot 19 081установок

Похожие

track-findings официальный OpenAI Скилл переносит подтверждённые находки Codex Security в Linear, Jira или GitHub. Он нужен, когда результаты сканирования уже проверены и их пора занести в трекер. CX Codex GP ChatGPT 26установок collab-proof dong7812 Скилл анализирует вклад Claude и действия разработчика за сессию кодинга. Помогает сохранить принятые решения и контекст отладки прямо в git-репозитории. Claude Code 25установок copilot-sdk microsoft Помогает создавать приложения на базе GitHub Copilot SDK для Node.js, Python, Go и .NET. Пригодится для программной интеграции Copilot в бэкенд или CLI-инструменты. Claude Code GitHub Copilot 76установок github-issue-creator microsoft Превращает голосовые заметки, логи ошибок и скриншоты в структурированные баг-репорты в формате GitHub Markdown. Сохраняет готовые файлы в папку /issues/. Claude Code GitHub Copilot 63установок ar-resume Alireza Rezvani Скилл возобновляет остановленный эксперимент autoresearch в Claude Code: находит нужную ветку git, загружает историю метрик и предлагает следующий шаг. Claude Code 11установок triage Matt Pocock Скилл проводит issue и внешние PR через роли триажа, проверку и подготовку брифа для агента. Подойдёт мейнтейнеру, который разбирает очередь задач. Claude Code 990 453установок code-review Matt Pocock Проверяет изменения от выбранной точки по стандартам репозитория и требованиям задачи. Нужен для ревью ветки, PR или незавершённой работы. Claude Code 789 521установок implement Matt Pocock Выполняет задачу по спецификации или тикетам, ведёт работу через тесты и завершает её ревью с коммитом. Подходит для задач, где нужен дисциплинированный цикл разработки. Claude Code 774 700установок

Вопросы о rebase-current-branch

Как установить rebase-current-branch в GitHub Copilot?

Запустите команду gh skill install github/awesome-copilot rebase-current-branch или выполните npx skills add github/awesome-copilot --skill rebase-current-branch.

Что делает скилл rebase-current-branch?

Он выясняет название основной ветки upstream, подтягивает свежие изменения и переносит на них коммиты текущей ветки. При конфликтах скилл останавливает процесс и ждет указаний.

Отправит ли скилл изменения на сервер после ребейза?

Нет. Правила запрещают скиллу выполнять git push или force-push без отдельного запроса от пользователя.

Исходный текст

SKILL.md · MIT
---
name: rebase-current-branch
description: 'Rebase the currently checked out feature branch onto the latest upstream default branch. Use when asked to update a branch with main or master, rebase the current branch onto the default branch, or sync a feature branch before review. Detects whether the repository uses main or master and guides safe conflict handling.'
license: MIT
allowed-tools: Bash
---

# Rebase the Current Branch

Update the active branch by replaying its commits on top of the latest default branch from its upstream remote. Use the repository's actual default branch, whether it is named `main`, `master`, or another branch.

## Workflow

1. **Inspect before changing anything.** Run `git status --porcelain=v1 --branch --untracked-files=all` and `git branch --show-current`. Confirm the current branch is not the default branch and note any local changes. If the working tree has changes, stop and ask the user whether to commit, stash, or otherwise handle them. Do not stash automatically.
2. **Identify the upstream and default branch.** Check `git remote -v` and `git remote show <remote>` (or the remote's symbolic `HEAD`) to determine the branch this repository treats as its default. Prefer the configured upstream for the current branch when available; otherwise use `origin`. Do not assume that `main` exists or that a branch named `master` is current. If the default branch cannot be identified unambiguously, ask the user.
3. **Fetch the latest default branch.** Fetch only the identified remote and default branch, for example:

   ```sh
   git fetch <remote> <default-branch>
   ```

   Verify the fetched remote-tracking ref exists before continuing.
4. **Rebase the active branch.** Tell the user which branch will be rebased onto which remote-tracking branch, then run:

   ```sh
   git rebase <remote>/<default-branch>
   ```

5. **Handle conflicts without discarding work.** If the rebase stops, explain which files conflict and that the rebase is paused. Resolve only when the intended changes are clear; otherwise ask the user. After resolution, stage the resolved files and run `git rebase --continue`. If the user wants to abandon the operation, run `git rebase --abort`. Never use `git reset --hard`, discard user changes, or skip commits to force completion.
6. **Offer validation hooks.** After the rebase succeeds, inspect the repository's documented validation steps and configured hooks (for example, pre-commit hooks or lint and test scripts). Ask the user whether they want those checks run before proceeding. If they agree, run the applicable checks and report their results; do not bypass or disable hooks.
7. **Verify the result.** When the rebase completes, run `git status --porcelain=v1 --branch --untracked-files=all` and summarize the outcome, including the base branch used, validation results if run, and any remaining changes. Do not push, force-push, or amend commits unless the user separately asks.

## Quick Path

For a clean working tree where the upstream default branch is known, the core operation is:

```sh
git fetch <remote> <default-branch>
git rebase <remote>/<default-branch>
```

Replace `<default-branch>` with the detected branch name (`main`, `master`, or another configured default). Never run the placeholder commands literally.

## Safety Rules

- Preserve the user's current branch and uncommitted work.
- Do not rebase the default branch itself.
- Do not assume local `main` or `master` is up to date; rebase onto the fetched remote-tracking branch.
- Do not push or force-push as part of this workflow.
- If a rebase is already in progress, inspect its state and ask whether to continue or abort; do not start another rebase.

© github · MIT · github/awesome-copilot

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой