gap-cli
v1.0.14
Published
**gap-cli**는 브랜치 생성, 커밋, 푸시를 한 번에 처리하는 간단한 **Git 자동화 CLI**입니다. 복잡한 명령어 입력 없이, `gap main feat: 첫 커밋` 한 줄로 끝낼 수 있습니다.
Readme
🧠 gap-cli — Git 자동 커밋·푸시 도구
gap-cli는 브랜치 생성, 커밋, 푸시를 한 번에 처리하는 간단한 Git 자동화 CLI입니다.
복잡한 명령어 입력 없이, gap main feat: 첫 커밋 한 줄로 끝낼 수 있습니다.
⚙️ Requirements
- Node.js ≥ 18 (LTS 권장)
- Git ≥ 2.20
- 원격 저장소(
origin)가 설정된 Git 레포지토리 (예:https://github.com/user/repo.git)
📦 Installation
🔸 전역 설치
npm install -g gap-cli🔸 설치 없이 1회성 실행
npx -y gap-cli <branch> <commit message...> [options]💻 Usage
gap <branch> <commit message...> [options]
# 또는
gap -b <branch> -m "<commit message>" [options]⚙️ Options
| 옵션 | 설명 |
| ----------------------- | -------------------------- |
| -b, --branch <name> | 대상 브랜치 이름 지정 |
| -m, --message <msg> | 커밋 메시지 (따옴표 생략 가능) |
| -e, --allow-empty | 변경사항이 없어도 커밋 허용 |
| -d, --debug | 실행되는 Git 명령어 출력 |
🔄 동작 순서
git add .실행git fetch origin --prune- 기본 브랜치 추론 (
origin/HEAD → mainfallback) - 브랜치 처리
- 로컬 존재 →
git switch <branch> - 원격만 존재 →
git switch -t origin/<branch> - 둘 다 없음 → 기본 브랜치에서 새 브랜치 생성
- 로컬 존재 →
git add -A(리네임/삭제 포함)- 변경사항이 있거나
--allow-empty옵션이 있으면 커밋 git push -u origin <branch>
💡 메시지에 큰따옴표(
")가 포함되어도 자동 이스케이프 처리됩니다.
🧩 Examples
# 1️ 기본 사용 — 메시지 따옴표 없이
gap main feat: 초기 셋업
# 2️ 옵션 형태
gap -b feature/api -m "feat: 로그인 API 추가"
# 3️ 변경사항이 없어도 빈 커밋 생성
gap release "chore: trigger ci" -e
# 4️ 디버그 모드로 실행
gap hotfix/login "fix: null 체크" -d⚡ Direct Usage (npx)
npx -y gap-cli main "feat: 첫 커밋"🧠 Troubleshooting
| 문제 상황 | 해결 방법 |
| --------------------------------- | ----------------------------------------------------------- |
| 🚫 현재 디렉토리가 Git 레포가 아님 | git init && git remote add origin <repo-url> 실행 후 재시도 |
| 🔒 원격(origin) 없음 또는 권한 오류 | SSH 키 또는 토큰 권한 확인 후 원격 설정 재확인 |
| 🔄 기본 브랜치가 main이 아님 | git remote set-head origin -a 명령으로 기본 브랜치 정렬 |
| ⚠️ PowerShell에서 특수문자 포함 메시지 문제 | 따옴표 없이 작동하지만, 필요 시 "메시지" 형태로 감싸서 실행 |
🧹 Uninstall
npm uninstall -g gap-cli🔗 Links & Resources
🪶 Acknowledgments
gap-cli는 반복적인 Git 워크플로우를 단순화하기 위해 만들어졌습니다.
기본 레지스트리는 https://registry.npmjs.org 입니다.
🏷️ FAQ on Naming
❓ “gap”을 대문자로 써도 되나요?
- CLI 이름은 소문자 gap을 권장합니다.
❓ 무슨 뜻인가요?
- Git Auto Push의 약자입니다.
브랜치 생성 → 커밋 → 푸시 과정을 한 번에 처리합니다.
