seed-submit-change

Installation
SKILL.md

SEED 변경 제출

seed-change-plantargetBranch, targetRef, prBase를 하나의 계약으로 사용합니다. 기준 브랜치는 읽기만 하고 현재 feature 브랜치만 바꿉니다.

1. 제출 전 상태 고정

  1. 현재 브랜치, 작업 트리, feature HEAD, 현재 upstream을 기록합니다.
  2. 현재 브랜치가 dev, minor, major면 중단합니다. 기준 브랜치에서 직접 제출하지 않습니다.
  3. origin/dev, origin/minor, origin/major를 가져옵니다.
  4. 현재 feature 브랜치를 만든 기존 기준 브랜치와 분기 SHA를 확정합니다. upstream, reflog, 세 기준 브랜치와의 fork point, 커밋 그래프를 함께 확인합니다. 가장 가까운 merge base라는 이유만으로 고르거나 같은 SHA의 브랜치 이름을 합치지 않습니다.
  5. 기존 기준 브랜치를 --base-ref로 넘겨 seed-change-plan을 다시 실행합니다. 최초 계획에서 확정한 --lane--bump 또는 --no-release도 그대로 넘깁니다. 세 값 중 하나라도 unknown이거나 서로 다르면 리베이스하지 않습니다.
  6. 선택한 대상 기준 브랜치 이름과 SHA를 함께 기록합니다. SHA가 같더라도 이름을 바꾸지 않습니다.

기존 기준 브랜치가 하나로 확정되지 않거나, 분기 SHA 이후 목록에 현재 작업이 아닌 lane 커밋이 섞여 있으면 중단합니다. targetRef는 옮겨 갈 기준이고 기존 분기 SHA인 oldBase는 옮길 커밋의 경계이므로 서로 다를 수 있습니다.

2. 커밋과 리베이스

커밋되지 않은 변경이 있으면 자동 stash와 git rebase --autostash를 쓰지 않습니다. 포함할 파일, 제외할 파일, 커밋 메시지를 보여주고 사용자 확인을 받은 뒤 승인된 파일만 stage하고 커밋합니다. 커밋 메시지는 영어 Conventional Commits 형식을 사용합니다.

Installs
1
GitHub Stars
1.1K
First Seen
11 days ago
seed-submit-change — daangn/seed-design