CLI 도구

forge CLI — 커맨드 라인에서 리포 관리, 태그 생성, PR 조작 등을 수행합니다.

설치

npm 으로 전역 설치 (Node.js 18+ 필요):

# npx 로 바로 실행 (설치 생략)
npx @tissue/forge-cli --version

# 전역 설치
npm install -g @tissue/forge-cli

# tgz 파일로 설치
npm install -g ./@tissue-forge-cli.tgz

forge 서버가 npm 레지스트리로 동작하는 경우 (공개 npm registry 가 없는 환경):

# forge npm 레지스트리 설정
npm config set @tissue:registry https://forge.tissue.works/npm/

# 설치
npm install -g @tissue/forge-cli

설정

토큰은 forge 설정 → 토큰 페이지에서 발급합니다. auth login은 토큰을 서버에 즉시 검증한 뒤 저장합니다.

# 로그인 (기본 서버: https://forge.tissue.works)
forge auth login forge_xxxxxxxxxxxxxxxx

# 다른 서버로 로그인
forge auth login forge_xxxxxxxxxxxxxxxx --url https://myforge.com

# 로그인 상태 확인
forge auth status

# git clone/push/pull 을 forge 토큰으로 자동 인증
forge auth setup-git

기본 명령어

auth — 인증 관리

  • auth login <token> — 토큰으로 로그인 (서버 검증 후 저장)
  • auth status — 로그인 상태 확인
  • auth setup-git — git clone/push/pull 을 forge 토큰으로 자동 인증
  • auth logout — 로그아웃

repos (alias: repo) — 리포지토리 관리

  • repos list — 접속 가능한 리포 목록 조회
  • repos create <name> — 새 리포 생성
  • repos get <owner>/<repo> — 리포 상세 조회
  • repos clone <owner>/<repo> [dir] — 리포 clone (forge 인증 자동 적용)

branches — 브랜치 관리

  • branches list <owner>/<repo> — 브랜치 목록 조회

pulls — PR 관리

  • pulls list <owner>/<repo> — PR 목록 조회
  • pulls create <owner>/<repo> <head> <base> --title '<제목>' — PR 생성
  • pulls merge <owner>/<repo> <number> --method squash — PR 머지 (merge/squash/fast-forward, 기본 merge)

tags — 태그 관리

  • tags list <owner>/<repo> — 태그 목록 조회
  • tags create <owner>/<repo> <tag> [sha] — 태그 생성
  • tags delete <owner>/<repo> <tag> — 태그 삭제

webhooks — 웹훅 관리

  • webhooks list <owner>/<repo> — 웹훅 목록 조회
  • webhooks create <owner>/<repo> --url <url> --events push,pull_request — 웹훅 생성
  • webhooks delete <owner>/<repo> <id> — 웹훅 삭제

태그 생성 예제

# HEAD 에 태그 생성
forge tags create tissue/forge v0.8.3

# 특정 커밋에 태그 생성
forge tags create tissue/forge v0.8.2 abc1234

# 태그 목록 조회
forge tags list tissue/forge

# 태그 삭제
forge tags delete tissue/forge v0.8.2

웹훅 자동 트리거

태그 push 시 forge 가 자동으로 relay CI/CD 엔진에 트리거를 발송합니다.

# 태그 생성 및 push
forge tags create tissue/forge v0.8.3
git push origin v0.8.3

# → relay 가 자동 빌드 → 배포