Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
## 변경 내용
-

## 변경 이유
-

## 테스트
- [ ] `npm run lint`
- [ ] `npm test`
- [ ] `npm run build`
- [ ] 그 외 수동 검증:
20 changes: 20 additions & 0 deletions .github/workflows/discord-pr-notify.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Discord PR 알림

on:
pull_request:
types: [opened, reopened]

jobs:
notify:
runs-on: ubuntu-latest
steps:
- name: Discord 알림 전송
uses: sarisia/actions-status-discord@eb045afee445dc055c18d3d90bd0f244fd062708
with:
webhook: ${{ secrets.DISCORD_WEBHOOK_URL }}
title: "PR 올라왔어요!"
description: |
${{ github.event.pull_request.title }}
${{ github.event.pull_request.html_url }}
color: 0x5865F2
username: GitHub
4 changes: 4 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,7 @@
- Conventional Commits 형식을 사용한다.
- 형식: `type(scope): 변경 요약`
- 타이틀 하단 행에 "-" 을 이용하여 세부 변경 사항들을 핵심만 나열한다. 불필요하다고 판단되면 안넣어도 됨

## 브랜치 및 PR 규칙

브랜치 생성, PR 작성, 병합 작업은 반드시 [CONTRIBUTING.md](./CONTRIBUTING.md)를 따른다.
2 changes: 2 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
공통 운영 규칙은 `AGENTS.md`를 정본으로 따른다. 아래에서 import한다.

브랜치 생성, PR 작성, 병합 작업은 반드시 [CONTRIBUTING.md](./CONTRIBUTING.md)를 따른다.

@AGENTS.md
41 changes: 41 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# 기여 가이드

이 문서는 커밋, 브랜치 생성, Pull Request(PR), 병합 정책의 상세 기준입니다.

## 작업하고 PR 올리기

커밋 제목은 Conventional Commits 형식으로 한국어로 작성합니다.

```
feat: 일정 공유 기능 추가
fix: 장소 검색 오류 수정
docs: 개발자 온보딩 보완
```

- `main`은 배포 기준 브랜치입니다. 직접 push하지 않고 모든 변경을 PR로 병합합니다.
- `dev`는 기능을 통합하고 릴리스 전에 함께 검증하는 브랜치입니다.
- 일반 작업은 최신 `dev`에서 `feature/<topic>` 브랜치를 만들고 `dev`를 대상으로 PR을 엽니다. 브랜치는 하나의 작업 단위로 짧게 유지하며, squash 병합이 끝난 feature 브랜치는 다시 사용하지 않습니다.
- 긴급 수정은 최신 `main`에서 `hotfix/<topic>` 브랜치를 만들고 `main`을 대상으로 PR을 엽니다.

## 공통 브랜치 흐름

브랜치 병합에는 다음 공통 흐름을 적용합니다.

| 병합 방향 | 방식 |
| :-- | :-- |
| `feature/*` → `dev` | Squash and merge |
| `dev` → `main` | Create a merge commit |
| `hotfix/*` → `main` | Squash and merge |
| `main` → `dev` 백머지 | Create a merge commit |

- hotfix나 revert가 `main`에 먼저 반영되면 최신 `main`의 정확한 HEAD를 merge commit으로 `dev`에 백머지합니다. cherry-pick, re-squash 또는 동일한 패치를 다시 적용하는 방식으로 전달하지 않습니다.
- 백머지 충돌을 해결하고 결과를 검증하기 전에는 다음 `dev` → `main` 릴리스를 병합하지 않습니다.
- Rebase merge는 사용하지 않습니다.
- 공유 중인 `main`과 `dev`의 이력을 재작성하거나 force-push하지 않습니다.
- 정책 도입 전의 기존 이력과 merge commit은 역사적 예외로 그대로 보존합니다. 토폴로지를 정리할 목적만으로 revert하거나 이력을 재작성하지 않습니다.

## Pull Request Rules
- PR 제목은 커밋 컨벤션과 동일한 형식(feat: ...)을 따른다.
- main으로 직접 merge 전 최소 1명의 리뷰가 필요하다.
- PR 본문은 .github/pull_request_template.md 형식을 그대로 따른다.
- PR 본문에 변경 이유와 테스트 방법을 간략히 적는다.
30 changes: 4 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

카카오톡으로 대화하고, 지도에서 장소를 찾고, 노션·엑셀에 일정을 따로 정리하던 여행 준비 과정을 하나의 워크스페이스로 합칩니다.

### 기술 스택
## 기술 스택

| Category | Technology |
| :------------ | ------------: |
Expand All @@ -15,7 +15,7 @@
| **DataFetch** | Tanstack Query|


### 실행
## 실행
npm install
npm run dev

Expand All @@ -24,28 +24,6 @@ npm test
npm run build


## 작업하고 PR 올리기
## 기여하기

공통적으로 `main`에는 직접 push하지 않고, 커밋 제목은 Conventional Commits 형식으로 한국어로 작성합니다.

```
feat: 일정 공유 기능 추가
fix: 장소 검색 오류 수정
docs: 개발자 온보딩 보완
```

### 모든 저장소의 공통 브랜치 흐름

Frontend, Backend, AI Server는 모두 같은 브랜치 전략을 사용합니다.

```
일반 작업: dev에서 feature/<topic> 분기 → dev로 PR → dev에서 main으로 릴리스 PR
긴급 수정: main에서 hotfix/<topic> 분기 → main으로 PR → dev로 백머지
```

- `main` — 배포 기준 브랜치이며 직접 push하지 않습니다.
- `dev` — 기능을 통합하고 `main` 병합 전에 함께 검증하는 브랜치입니다.
- `feature/<topic>` — `dev`에서 분기하고 PR 대상도 `dev`로 지정합니다.
- `hotfix/<topic>` — `main`에서 분기하고 PR 대상은 `main`으로 지정합니다. 병합 후 같은 변경을 `dev`에 백머지합니다.

브랜치는 하나의 작업 단위로 짧게 유지합니다.
커밋, 브랜치 생성, PR 및 병합 절차는 [CONTRIBUTING.md](./CONTRIBUTING.md)를 따릅니다.
Loading