Commit 4dd0f2e8 authored by platyhouse's avatar platyhouse

# Git 커밋 스크립트 기능 개선 및 단축 명령 추가

## ptyGitCommit 기능 확장

### 옵션 시스템 추가
- ptyGitCommit: 옵션 파싱 로직 추가 (--force, --push, --help 지원)
- ptyGitCommit: --help 옵션으로 사용법 안내 기능 추가
- ptyGitCommit: --force 옵션으로 확인 없이 바로 커밋 기능 추가
- ptyGitCommit: --push 옵션으로 커밋 후 자동 push 기능 추가

### 코드 정리
- ptyGitCommit: 스크립트 상단에 사용법 주석 추가
- ptyGitCommit: 이모지 출력 제거 (,  → 일반 텍스트)
- ptyGitCommit: 커밋 취소 시 exit 1 반환하도록 수정

## 단축 명령 추가

### ptyGitCommitAndPush 스크립트 신규 생성
- ptyGitCommitAndPush: ptyGitCommit --force --push 의 단축 명령
- ptyGitCommitAndPush: --help 옵션으로 사용법 안내
- ptyGitCommitAndPush: 사용자 메시지 인자 전달 지원
parent 150639e4
#!/bin/bash #!/bin/bash
echo "커밋 메세지를 작성중..." #
# ptyGitCommit
#
# Claude를 사용해서 커밋 메시지를 자동 생성하고 커밋합니다.
#
# Usage: ptyGitCommit [메시지] [옵션]
#
# 옵션:
# --force 확인 없이 바로 커밋
# --push 커밋 후 push
# --help 도움말
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
# 사용자가 제공한 메시지 저장 # 옵션 파싱
USER_MSG="$1" USER_MSG=""
FORCE=false
DO_PUSH=false
for arg in "$@"; do
case $arg in
--force)
FORCE=true
;;
--push)
DO_PUSH=true
;;
--help)
echo "사용법: $0 [메시지] [옵션]"
echo ""
echo "옵션:"
echo " --force 확인 없이 바로 커밋"
echo " --push 커밋 후 push"
echo " --help 도움말"
echo ""
echo "예시:"
echo " $0 # 자동 생성 메시지로 커밋 (확인 필요)"
echo " $0 \"버그 수정\" # 사용자 메시지 + 자동 생성"
echo " $0 --force # 확인 없이 커밋"
echo " $0 --force --push # 확인 없이 커밋 + push"
echo " $0 \"기능 추가\" --force --push"
exit 0
;;
--*)
# 알 수 없는 옵션은 무시
;;
*)
# 옵션이 아니면 사용자 메시지로 처리
if [ -z "$USER_MSG" ]; then
USER_MSG="$arg"
fi
;;
esac
done
echo "커밋 메세지를 작성중..."
# claude 출력을 변수에 저장 # claude 출력을 변수에 저장
COMMIT_MSG=$(claude -p "$(cat "$SCRIPT_DIR/ptyGitCommit.prompt")") COMMIT_MSG=$(claude -p "$(cat "$SCRIPT_DIR/ptyGitCommit.prompt")")
...@@ -29,11 +80,30 @@ echo "$COMMIT_MSG" ...@@ -29,11 +80,30 @@ echo "$COMMIT_MSG"
echo "==========================================" echo "=========================================="
echo "" echo ""
# 확인 # 확인 (--force가 아닐 때만)
read -p "이 메세지로 커밋하시겠습니까? (y/n): " confirm if [ "$FORCE" = true ]; then
confirm="y"
else
read -p "이 메세지로 커밋하시겠습니까? (y/n): " confirm
fi
if [ "$confirm" = "y" ] || [ "$confirm" = "Y" ]; then if [ "$confirm" = "y" ] || [ "$confirm" = "Y" ]; then
git commit -m "$COMMIT_MSG" git commit -m "$COMMIT_MSG"
echo "✅ 커밋 완료!" echo "커밋 완료!"
# --push 옵션이 있으면 push
if [ "$DO_PUSH" = true ]; then
echo ""
echo "push 중..."
git push
if [ $? -eq 0 ]; then
echo "push 완료!"
else
echo "push 실패!"
exit 1
fi
fi
else else
echo "❌ 커밋 취소됨" echo "커밋 취소됨"
exit 1
fi fi
#!/bin/bash
#
# ptyGitCommitAndPush
#
# Claude를 사용해서 커밋 메시지를 자동 생성하고 커밋 + push 합니다.
# (ptyGitCommit --force --push 의 단축 명령)
#
# Usage: ptyGitCommitAndPush [메시지]
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
# 도움말
if [ "$1" = "--help" ]; then
echo "사용법: $0 [메시지]"
echo ""
echo "Claude를 사용해서 커밋 메시지를 자동 생성하고 커밋 + push 합니다."
echo "(ptyGitCommit --force --push 의 단축 명령)"
echo ""
echo "예시:"
echo " $0 # 자동 생성 메시지로 커밋 + push"
echo " $0 \"버그 수정\" # 사용자 메시지 + 자동 생성 후 커밋 + push"
exit 0
fi
# ptyGitCommit --force --push 실행
"$SCRIPT_DIR/ptyGitCommit" "$@" --force --push
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment