К основному содержанию
скилл CX Codex

rebase-latest-main — скилл для Claude Code: ребейз на свежий main

Скилл проводит агента по шагам: проверить ветку, сделать fetch, ребейзнуть на origin/main и разрулить конфликты. Полезен, когда ветка отстала от main.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add dyoshikawa/rulesync --skill rebase-latest-main -a claude-code
Открыть на GitHub

Что делает rebase-latest-main

Скилл описывает порядок действий для git. Сначала агент смотрит текущую ветку и проверяет, нет ли незакоммиченных изменений. Если они есть, он либо просит вас закоммитить, либо спрашивает, что делать дальше — закоммитить, спрятать в stash или отменить.

Дальше идёт git fetch origin main и git rebase origin/main. При конфликтах агент находит файлы через git diff --name-only --diff-filter=U, читает каждый, разбирает обе версии и стейджит результат через git add <resolved-file>, после чего продолжает ребейз. Если разрулить не выходит, он показывает маркеры конфликта и ждёт вашего решения; откат — git rebase --abort.

После успешного ребейза скилл пушит через git push --force-with-lease — это безопаснее --force, потому что не затирает чужую работу. Один момент: если в вашем флоу force-push в общую ветку запрещён, шаг придётся пропустить руками. В конце агент отчитывается, сколько коммитов перенёс и какие конфликты закрыл.

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

  • подтянуть свежий origin/main в свою ветку
  • разрулить конфликты при ребейзе
  • проверить, нет ли незакоммиченных изменений перед ребейзом
  • откатить неудачный ребейз через git rebase --abort
  • обновить удалённую ветку после переноса коммитов

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

  • сделай ребейз на свежий main
  • обнови мою ветку последним main
  • синхронизируй ветку с upstream

Как установить rebase-latest-main

1Через Skills CLI (Vercel)

npx skills add dyoshikawa/rulesync --skill rebase-latest-main -a claude-code

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

~/.claude/skills/rebase-latest-main/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/rebase-latest-main/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

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

rulesync-feature-research Сопоставляет фичи rulesync с документацией кодинг-агентов: что поддерживается, где пробелы, чем отличается поведение клиентов. CX Codex +1 ★ 1 552звёзд репо resolve-scrap-issues Скилл проходит по свежим GitHub-issue с меткой maintainer-scrap, проверяет каждую и либо закрывает её, либо открывает один общий PR с исправлениями. CX Codex +1 ★ 1 552звёзд репо prs-awaiting-author Показывает открытые пул-реквесты, по которым следующий шаг за автором: упал CI, не отвечены замечания ревью, ждёт ответа вопрос мейнтейнера. CX Codex +1 ★ 1 552звёзд репо porting-another-repository Разбирает фичу в текущем репозитории и правила целевого, а потом пишет план переноса в tmp/ — файлами, которые вы применяете руками. CX Codex +1 ★ 1 552звёзд репо goal-release Ведёт релиз целиком: открывает PR, ждёт зелёный CI, мержит и обновляет формулу Homebrew. Пригодится, когда версию надо выпустить одной командой. CX Codex +1 ★ 1 552звёзд репо git-worktree-runner Скилл учит агента управлять git worktree через CLI-обёртку gtr: создавать, открывать в редакторе, запускать команды и удалять. CX Codex +1 ★ 1 552звёзд репо draft-issue-to-external-repository Готовит GitHub issue для репозитория, которым вы не владеете: изучает шаблоны и стиль проекта, уточняет замысел с вами и сохраняет текст в файл. CX Codex +1 ★ 1 552звёзд репо create-issue Скилл, который оформляет GitHub issue по шагам: собирает данные, изучает код, пишет описание на английском и ставит метки. Пригодится, когда лень вручную разбираться с шаблоном и gh label list. CX Codex +1 ★ 1 552звёзд репо

Похожие

stacked-prs bobmatnyc Скилл учит агента собирать цепочки зависимых pull request'ов: каждая ветка растёт из предыдущей, а не из main. Пригодится, когда большую фичу разбили на этапы. CX Codex +1 362установок git-master JosiahSiegel Скилл по Git для ИИ-агентов: подсказывает команды, страхует опасные операции и разбирает конфликты. Пригодится, когда агент лезет в историю репозитория. CX Codex +1 787установок melt paulnsorensen Скилл для разрешения конфликтов при merge, rebase, cherry-pick и pull. Ведёт по шагам и не трогает опубликованные ветки. CX Codex +1 634установок git-integrate LegendApp Ведёт rebase, merge, cherry-pick или revert до конца и не трогает постороннюю работу. Пригодится, когда операция встала на конфликте. CX Codex +1 389установок rebase-current-branch официальный github Скилл переносит текущую ветку на свежую ветку по умолчанию через git rebase. Пригодится, когда нужно подтянуть изменения из main или master перед ревью без риска потерять правки. 3установок git-advanced-workflows Seth Hobson Скилл помогает править историю Git, переносить коммиты, искать источник бага и восстанавливать потерянные ветки. Подойдёт для сложных ветвлений и подготовки PR. CX Codex 19 356установок

Рядом в теме «Git и GitHub»

Все скиллы по теме «Git и GitHub» →

Вопросы о rebase-latest-main

Как установить rebase-latest-main в Claude?

Выполните npx skills add dyoshikawa/rulesync --skill rebase-latest-main -a claude-code. Скилл появится по пути ~/.claude/skills/rebase-latest-main/SKILL.md.

Что делает rebase-latest-main?

Проводит агента по шагам: проверка ветки и рабочего дерева, git fetch origin main, ребейз, разрешение конфликтов и force-push с --force-with-lease.

Скилл сам коммитит мои изменения?

Нет. При незакоммиченных изменениях он спрашивает, что делать: закоммитить, спрятать в stash или отменить операцию.

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

SKILL.md · MIT
---
name: rebase-latest-main
description: >-
  Fetch latest origin/main and rebase it onto the current branch, resolving
  conflicts if necessary. Use when the user wants to rebase on main, update
  their branch with latest main, or sync with upstream.
targets:
  - "*"
---

# Rebase Latest Main

Fetch the latest `origin/main` and rebase it onto the current working branch.

## Step 1: Verify Current State

1. Check the current branch:

   ```bash
   git branch --show-current
   ```

2. Ensure there are no uncommitted changes:

   ```bash
   git status --porcelain
   ```

   If there are uncommitted changes, either:
   - Commit them first, or
   - Ask the user how to proceed (commit, stash, or abort)

## Step 2: Fetch Latest Changes

Fetch the latest changes from the remote:

```bash
git fetch origin main
```

## Step 3: Rebase onto origin/main

Start the rebase:

```bash
git rebase origin/main
```

### If rebase succeeds without conflicts:

Proceed to Step 5.

### If conflicts occur:

1. Identify conflicting files:

   ```bash
   git diff --name-only --diff-filter=U
   ```

2. For each conflicting file:
   - Read the file content to understand the conflict
   - Analyze both versions (HEAD and origin/main)
   - Resolve the conflict by choosing the appropriate changes or merging them
   - Stage the resolved file:
     ```bash
     git add <resolved-file>
     ```

3. Continue the rebase:

   ```bash
   git rebase --continue
   ```

4. Repeat until all conflicts are resolved and rebase is complete.

## Step 4: Handle Rebase Failure

If unable to resolve conflicts automatically:

- Show the conflicting files and conflict markers to the user
- Ask for guidance on how to resolve
- If the user wants to abort:
  ```bash
  git rebase --abort
  ```

## Step 5: Push Changes

After successful rebase, force push to update the remote branch:

```bash
git push --force-with-lease
```

Note: `--force-with-lease` is safer than `--force` as it prevents overwriting others' work.

## Step 6: Report Result

Summarize the operation:

1. Number of commits rebased
2. Any conflicts that were resolved
3. Confirmation that the branch is now up-to-date with origin/main

© dyoshikawa · MIT · dyoshikawa/rulesync

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

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

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