문서 업데이트: 명령어 실행 위치(Root/Server) 명시 및 가이드 보강
This commit is contained in:
parent
d6784807f2
commit
c2e0a7804a
@ -27,18 +27,21 @@
|
||||
|
||||
---
|
||||
|
||||
## 2. 개발 및 배포 절차 (Local → Remote)
|
||||
## 2. 개발 및 배포 절차 (개발 PC)
|
||||
|
||||
모든 명령어는 프로젝트의 **최상위 루트 폴더**(`smart_ims/`)에서 실행합니다.
|
||||
|
||||
### STEP 1: 코드 변경 사항 커밋 및 푸시
|
||||
```powershell
|
||||
# [위치: 프로젝트 루트]
|
||||
git add .
|
||||
git commit -m "릴리즈 준비: v0.3.5 패치"
|
||||
git push origin main
|
||||
```
|
||||
|
||||
### STEP 2: 어노테이티드 태그(Annotated Tag) 생성
|
||||
시스템 엔진이 메시지를 읽으려면 반드시 `-a` 옵션을 사용해야 합니다.
|
||||
```powershell
|
||||
# [위치: 프로젝트 루트]
|
||||
git tag -a v0.3.5 -m "[PATCH] 시스템 안정화 패치
|
||||
- 원격 태그 동기화 로직 강화
|
||||
- API 캐시 방지 타임스탬프 도입"
|
||||
@ -46,6 +49,7 @@ git tag -a v0.3.5 -m "[PATCH] 시스템 안정화 패치
|
||||
|
||||
### STEP 3: 원격 저장소에 태그 푸시
|
||||
```powershell
|
||||
# [위치: 프로젝트 루트]
|
||||
git push origin v0.3.5
|
||||
```
|
||||
|
||||
@ -53,28 +57,28 @@ git push origin v0.3.5
|
||||
|
||||
## 3. 운영 서버 수동 업데이트 방법 (Manual Update)
|
||||
|
||||
웹 UI의 자동 업데이트가 불가능하거나 직접 서버에서 제어해야 할 경우 아래 명령어를 순서대로 실행합니다.
|
||||
웹 UI 업데이트가 실패하거나 서버에서 직접 제어해야 할 경우 사용합니다.
|
||||
|
||||
### STEP 1: 최신 태그 정보 강제 동기화
|
||||
로컬 태그 캐시와 원격 저장소의 실제 태그를 일치시킵니다.
|
||||
### STEP 1: 원격 정보 동기화 및 체크아웃
|
||||
```powershell
|
||||
# [위치: 프로젝트 루트]
|
||||
# 1. 태그 정보 강제 업데이트
|
||||
git fetch origin +refs/tags/*:refs/tags/* --force --prune --prune-tags
|
||||
```
|
||||
|
||||
### STEP 2: 대상 버전으로 체크아웃
|
||||
```powershell
|
||||
# 모든 변경사항을 무시하고 강제로 특정 태그 버전으로 전환
|
||||
# 2. 대상 버전으로 강제 체크아웃
|
||||
git checkout -f v0.3.5
|
||||
```
|
||||
|
||||
### STEP 3: 의존성 설치 및 빌드 (Root 경로)
|
||||
### STEP 2: 프론트엔드 빌드
|
||||
```powershell
|
||||
# [위치: 프로젝트 루트]
|
||||
npm install
|
||||
npm run build
|
||||
```
|
||||
|
||||
### STEP 4: 서버 모듈 의존성 설치 및 재시작 (Server 경로)
|
||||
### STEP 3: 백엔드 반영 및 서비스 재시작
|
||||
```powershell
|
||||
# [위치: 서버 폴더 (프로젝트루트/server)]
|
||||
cd server
|
||||
npm install
|
||||
pm2 reload smartims-api
|
||||
@ -84,10 +88,11 @@ pm2 reload smartims-api
|
||||
|
||||
## 4. 유용한 Git 명령어 레퍼런스
|
||||
|
||||
* **태그 목록 확인**: `git tag -l`
|
||||
* **최신 태그 정보 확인**: `git describe --tags --abbrev=0`
|
||||
* **태그 목록 확인**: `git tag -l` (루트 실행)
|
||||
* **최신 태그 정보 확인**: `git describe --tags --abbrev=0` (루트 실행)
|
||||
* **원격 태그 강제 덮어쓰기 (수정 시)**:
|
||||
```powershell
|
||||
# [위치: 프로젝트 루트]
|
||||
git tag -a v0.3.5 -f -m "수정된 메시지..."
|
||||
git push origin v0.3.5 -f
|
||||
```
|
||||
@ -95,6 +100,6 @@ pm2 reload smartims-api
|
||||
---
|
||||
|
||||
## 💡 주의사항
|
||||
1. **빌드 확인**: 운영 서버에서 수동 업데이트 시 `npm run build` 과정에서 에러가 없는지 반드시 확인해야 합니다.
|
||||
2. **권한 차이**: 수동 업데이트 시 파일 권한 문제가 발생할 수 있으므로 가급적 서비스 실행 계정(예: `sokuree`)으로 진행하세요.
|
||||
3. **No-Cache**: 업데이트 후 브라우저에 즉시 반영되지 않으면 서버의 `pm2 reload`가 정상적으로 수행되었는지 확인하세요.
|
||||
1. **실행 위치 확인**: 특히 `pm2` 명령어나 `server` 관련 설정은 반드시 `server` 폴더 내에서 실행하거나 경로를 정확히 지정해야 합니다.
|
||||
2. **경로 이동**: `cd server`를 통해 폴더를 이동한 후 작업을 마쳤다면, 다시 `cd ..`를 통해 루트로 복귀하는 습관이 중요합니다.
|
||||
3. **권한**: 운영 서버에서는 가급적 서비스 소유 계정으로 명령어를 실행하세요.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user