초기 커밋: Docker/PostgreSQL 이관, 구글 OAuth 제거, Gitea 푸시 스크립트 추가
This commit is contained in:
@@ -0,0 +1,110 @@
|
||||
@echo off
|
||||
setlocal EnableExtensions EnableDelayedExpansion
|
||||
chcp 65001 >nul
|
||||
|
||||
REM ===============================================================
|
||||
REM Push project to Gitea (Windows)
|
||||
REM Usage:
|
||||
REM push_to_gitea.bat
|
||||
REM push_to_gitea.bat "commit message"
|
||||
REM 비밀번호/토큰은 이 파일에 절대 저장하지 않습니다.
|
||||
REM 인증은 Git Credential Manager 또는 푸시 시 직접 입력으로 처리됩니다.
|
||||
REM ===============================================================
|
||||
|
||||
set "REMOTE_URL=https://gitea.no1king.freeddns.org/king/dbx-orderlist.git"
|
||||
set "BRANCH=main"
|
||||
|
||||
cd /d "%~dp0"
|
||||
|
||||
where git >nul 2>nul
|
||||
if errorlevel 1 (
|
||||
echo [ERROR] git 가 PATH 에 없습니다. Git for Windows 를 설치하세요.
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
REM ---- 1) 저장소 초기화 (이미 있으면 그대로 사용) ----
|
||||
if not exist ".git" (
|
||||
echo [INFO] Git 저장소를 초기화합니다.
|
||||
git init -b %BRANCH%
|
||||
if errorlevel 1 (
|
||||
git init
|
||||
git symbolic-ref HEAD refs/heads/%BRANCH%
|
||||
)
|
||||
) else (
|
||||
echo [INFO] 이미 Git 저장소가 초기화되어 있습니다.
|
||||
)
|
||||
|
||||
REM ---- 2) 현재 브랜치를 main 으로 맞춤 ----
|
||||
for /f "delims=" %%b in ('git rev-parse --abbrev-ref HEAD 2^>nul') do set "CURRENT_BRANCH=%%b"
|
||||
if not defined CURRENT_BRANCH set "CURRENT_BRANCH=HEAD"
|
||||
if /I not "%CURRENT_BRANCH%"=="%BRANCH%" (
|
||||
if "%CURRENT_BRANCH%"=="HEAD" (
|
||||
git checkout -b %BRANCH% 2>nul
|
||||
) else (
|
||||
echo [INFO] 현재 브랜치 %CURRENT_BRANCH% -> %BRANCH% 로 이름 변경합니다.
|
||||
git branch -M %BRANCH%
|
||||
)
|
||||
)
|
||||
|
||||
REM ---- 3) origin 설정 / 확인 ----
|
||||
git remote get-url origin >nul 2>nul
|
||||
if errorlevel 1 (
|
||||
echo [INFO] origin 을 추가합니다: %REMOTE_URL%
|
||||
git remote add origin "%REMOTE_URL%"
|
||||
) else (
|
||||
for /f "delims=" %%u in ('git remote get-url origin') do set "EXIST_URL=%%u"
|
||||
if /I not "!EXIST_URL!"=="%REMOTE_URL%" (
|
||||
echo [INFO] origin URL 이 다릅니다.
|
||||
echo 기존: !EXIST_URL!
|
||||
echo 변경: %REMOTE_URL%
|
||||
git remote set-url origin "%REMOTE_URL%"
|
||||
) else (
|
||||
echo [INFO] origin 이 이미 올바르게 설정되어 있습니다.
|
||||
)
|
||||
)
|
||||
|
||||
REM ---- 4) 변경 사항 add ----
|
||||
git add -A
|
||||
|
||||
REM ---- 5) status 보여주고 사용자 확인 ----
|
||||
echo.
|
||||
echo =============== git status ===============
|
||||
git status
|
||||
echo ==========================================
|
||||
echo.
|
||||
set /p CONFIRM="이 내용을 커밋 & push 하시겠습니까? (Y/N): "
|
||||
if /I not "%CONFIRM%"=="Y" (
|
||||
echo [INFO] 사용자가 취소했습니다.
|
||||
exit /b 0
|
||||
)
|
||||
|
||||
REM ---- 6) 커밋 메시지 결정 ----
|
||||
set "MSG=%~1"
|
||||
if "%MSG%"=="" (
|
||||
set /p MSG="커밋 메시지를 입력하세요 (빈 값이면 'update project'): "
|
||||
)
|
||||
if "%MSG%"=="" set "MSG=update project"
|
||||
|
||||
REM ---- 7) 커밋 (변경 없으면 건너뜀) ----
|
||||
git diff --cached --quiet
|
||||
if errorlevel 1 (
|
||||
git commit -m "%MSG%"
|
||||
if errorlevel 1 (
|
||||
echo [ERROR] 커밋 실패.
|
||||
exit /b 1
|
||||
)
|
||||
) else (
|
||||
echo [INFO] 스테이징된 변경이 없습니다. 커밋을 건너뜁니다.
|
||||
)
|
||||
|
||||
REM ---- 8) push ----
|
||||
echo [INFO] origin/%BRANCH% 로 push 합니다. 인증창이 뜨면 Gitea ID/비밀번호 또는 토큰을 입력하세요.
|
||||
git push -u origin %BRANCH%
|
||||
if errorlevel 1 (
|
||||
echo [ERROR] push 실패. 인증 또는 네트워크 상태를 확인하세요.
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo.
|
||||
echo [OK] 완료되었습니다.
|
||||
endlocal
|
||||
Reference in New Issue
Block a user