2024 벚꽃톤 6팀 REBOOK BackEnd Repository입니다.
해당 Repository는 다음과 같은 규칙을 따르고 있습니다.
![](https://private-user-images.githubusercontent.com/62001944/313498829-8ca18848-1286-4610-afd4-3a39e1270be9.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk1NTE4NzUsIm5iZiI6MTczOTU1MTU3NSwicGF0aCI6Ii82MjAwMTk0NC8zMTM0OTg4MjktOGNhMTg4NDgtMTI4Ni00NjEwLWFmZDQtM2EzOWUxMjcwYmU5LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE0VDE2NDYxNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRiODU5Yzc0M2U2NWY1OGE5YzEwODUwYmQ0NDVjNzAwNGM4MjhiZjE3ZGI4YmVjMWJjOGVmMWI0YjA1YWYxMTcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.B82cPbuaCtp1EMkuVdnutlFG4kpaihld5ptU9f6hCmw)
-
사용자는 먼저 Upstream Repository를 자신의 GitHub 계정으로 포크(fork)하고, 이 포크(fork)된 Origin Repository를 로컬 컴퓨터로 Clone하여 작업합니다.
-
그 후 개발한 변경 사항을 Origin Repository로 Push합니다. 이후 Upstream Repository로 풀 PR를 보내 변경 사항을 제안합니다.
-
PR이 완료 된 후 Upstream Repository의 최신 변경 사항을 가져오기 위해 Local에서 풀(pull)을 사용합니다.
![](https://private-user-images.githubusercontent.com/62001944/313498828-a5380849-5d07-47cc-9a24-ecef533c606d.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk1NTE4NzUsIm5iZiI6MTczOTU1MTU3NSwicGF0aCI6Ii82MjAwMTk0NC8zMTM0OTg4MjgtYTUzODA4NDktNWQwNy00N2NjLTlhMjQtZWNlZjUzM2M2MDZkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE0VDE2NDYxNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTU0MTMzMzA1NTNjNmIyNzg3ZGJmMGYxYzE1ZjA5MGU5ODg4NGVlYjdiZDBiMmQ5YzI1NGE0NjU0ZjZiNTBlMGEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.01SjaJ_2Lrcb8P6EeiLkWSsj9s4J-j_UbFyaO-eiKDU)
- 개발을 시작할 때는 Upstream Repository에서 Issue를 생성합니다.
- 이후 Issue에서 Origin Repository의 Dev Branch에서 새로운 Branch를 생성합니다
- 이때 브랜치 이름은 다음을 따릅니다.
- 새로운 기능 개발 : feature/#[Issue의 번호]
- 버그 픽스 : fix/#[Issue의 번호]
- 기능 리팩토링 : refactor/#[Issue의 번호]
- Loacl에서 Fetch를 통해 만든 New Branch(feature or fix or refactor)을 들고옵니다.
- 해당 Branch로 checkout 이후 기능 개발을 진행합니다.
![](https://private-user-images.githubusercontent.com/62001944/313498826-0c0d26c6-3fec-4b20-aa02-6c91dee7a024.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk1NTE4NzUsIm5iZiI6MTczOTU1MTU3NSwicGF0aCI6Ii82MjAwMTk0NC8zMTM0OTg4MjYtMGMwZDI2YzYtM2ZlYy00YjIwLWFhMDItNmM5MWRlZTdhMDI0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE0VDE2NDYxNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTMwNGJjNGZmOTVlYmY2MTU2MWMyNTlmYjFmOWVhZmI5NWVmYjM1MWE0MjIxMWI0MDY3ZGY5YWQwMThlNTc4MTgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.NET45xXXr4YFDZzZDG6P-3X8g2r00Oj6e9Vo1374s5E)
- 기능 개발이 종료되면 Origin Repository의 Branch(feature or fix or refactor)로 변경 사항을 Push 합니다.
- Origin Repository에서 Upstream Repository로 PR을 보냅니다.
- Code Review 이후 마지막으로 Approve한 사람은 Squash And Merge를 합니다.
- PR이 Squash And Merge되면 Local에서는 dev Branch로 checkout합니다.
- Local에서 Upstream Repository의 dev Branch를 pull 받습니다.
- 마지막으로 Origin Repository의 dev Branch를 Update하기 위해 Push를 해줍니다.
![](https://private-user-images.githubusercontent.com/62001944/313498825-530dd292-8894-400a-bb77-fbfdd6946f17.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk1NTE4NzUsIm5iZiI6MTczOTU1MTU3NSwicGF0aCI6Ii82MjAwMTk0NC8zMTM0OTg4MjUtNTMwZGQyOTItODg5NC00MDBhLWJiNzctZmJmZGQ2OTQ2ZjE3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE0VDE2NDYxNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTUyNTc3NzRmYmJiY2QwYjRkNDIwYzY0YTg2MzliM2I2MjRhOTlmODhiNDBjNzkxMWY3MWIwYTY2MWIzNDQ3ZTAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.PNfZgWCGQ0sGoS-MTJioUEA-eL0Ma7wp0rEvMlThm2s)
- 만약 Release Version을 낼 때는 Upstream의 dev Branch에서 main Branch로 PR을 날립니다.
- 해당 Repository의 모든 사용자가 Code를 재확인한 후 Merge를 합니다.
Commit Type | Description |
---|---|
feat | Add new features |
fix | Fix bugs |
docs | Modify documentation |
style | Code formatting, missing semicolons, no changes to the code itself |
refactor | Code refactoring |
test | Add test code, refactor test code |
chore | Modify package manager, and other miscellaneous changes (e.g., .gitignore) |
design | Change user UI design, such as CSS |
comment | Add or modify necessary comments |
rename | Only changes to file or folder names or locations |
remove | Only performing the action of deleting files |
Icon | Code | Description |
---|---|---|
🧑🏻🎨 | :art | Improve code structure/formatting |
⚡️ | :zap | Performance improvement |
🔥 | :fire | Delete code/files |
🐛 | :bug | Fix bugs |
🚑 | :ambulance | Urgent fixes |
✨ | :sparkles | Introduce new features |
💄 | :lipstick | Add/modify UI/style files |
⏪ | :rewind | Revert changes |
🔀 | :twisted_rightwards_arrows | Merge branches |
💡 | :bulb | Add/modify comments |
🗃 | :card_file_box | Database-related changes |