Files
ShiftRing/.agent/workflows/GIT_PUSH_GUIDE.md

144 lines
2.8 KiB
Markdown

# Git 푸시 성공 가이드
## 빠른 실행
```bash
# 1. gh CLI 인증 확인
./gh.exe auth status
# 2. 인증이 안 되어 있으면 로그인
./gh.exe auth login --web
# 3. Git에 gh 인증 설정
./gh.exe auth setup-git
# 4. 푸시
git push shiftring main
```
---
## 상세 절차
### 1. GitHub CLI 인증
```bash
# 인증 상태 확인
./gh.exe auth status
```
**인증이 안 된 경우:**
```bash
./gh.exe auth login --web
```
- One-time code가 표시됨 (예: C7EF-30B3)
- https://github.com/login/device 접속
- 코드 입력 후 인증 완료
### 2. Git에 gh 인증 연동
```bash
./gh.exe auth setup-git
```
### 3. 푸시 실행
```bash
# shiftring remote 사용 (agent.md에 정의됨)
git push shiftring main
# 또는 origin 사용
git push origin main
```
---
## 저장소 정보
| Remote | URL | 용도 |
|--------|-----|------|
| origin | https://github.com/sanjeok77-tech/ShiftRing.git | 코드 저장소 |
| shiftring | https://github.com/sanjeok77-tech/ShiftRing.git | 코드 저장소 (동일) |
---
## 문제 해결
### "Cannot prompt because user interactivity has been disabled"
**원인**: 환경 변수로 인해 인터랙티브 프롬프트가 비활성화됨
**해결**:
```bash
# gh CLI로 인증 설정
./gh.exe auth setup-git
# 그 다음 푸시
git push shiftring main
```
### "Host key verification failed" (SSH)
**원인**: SSH 키가 설정되지 않음
**해결**: HTTPS 사용
```bash
git remote set-url origin https://github.com/sanjeok77-tech/ShiftRing.git
```
---
## 릴리즈 푸시 (dakjaba-releases)
```bash
# 1. 버전 파일 업데이트
# version.json, CHANGELOG.md, README.md 수정
# 2. APK 복사
cp app/build/outputs/apk/release/app-release.apk app.apk
# 3. GitHub Release 생성
./gh.exe release create v1.1.4 "app.apk" \
--title "Shiftring v1.1.4" \
--notes "릴리즈 노트" \
-R "sanjeok77-tech/dakjaba-releases"
# 4. dakjaba-releases 저장소 업데이트
./gh.exe repo clone sanjeok77-tech/dakjaba-releases ../dakjaba-releases-temp
cp version.json ../dakjaba-releases-temp/
cp app.apk ../dakjaba-releases-temp/
cd ../dakjaba-releases-temp
git add . && git commit -m "update: vX.X.X" && git push origin main
cd ..
rm -rf dakjaba-releases-temp
# 5. 소스 코드 커밋 및 푸시
cd /c/Users/work/Desktop/1.0.0
git add . && git commit -m "chore: release vX.X.X"
git push shiftring main
```
---
## 성공 사례 (2026-02-21)
```bash
$ ./gh.exe auth status
github.com
✓ Logged in to github.com account sanjeok77-tech (keyring)
- Active account: true
- Git operations protocol: https
- Token: gho_************************************
$ ./gh.exe auth setup-git
git: authorization completed
$ git push shiftring main
To https://github.com/sanjeok77-tech/ShiftRing.git
a848cd8..c72db7f main -> main
```
---
**최종 수정**: 2026-02-21