2024 벚꽃톤 6팀 REBOOK BackEnd Repository입니다.
해당 Repository는 다음과 같은 규칙을 따르고 있습니다.
![](https://private-user-images.githubusercontent.com/62001944/313498829-8ca18848-1286-4610-afd4-3a39e1270be9.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkzNDY0OTcsIm5iZiI6MTczOTM0NjE5NywicGF0aCI6Ii82MjAwMTk0NC8zMTM0OTg4MjktOGNhMTg4NDgtMTI4Ni00NjEwLWFmZDQtM2EzOWUxMjcwYmU5LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEyVDA3NDMxN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTAwZDdhMjFkMWNhMzMxZTMwNTJjOWY5ODljMTAzYzJlYTI5MWQyMzgwZTIyMDg4MjY2NGFkMzg0YjU4ZmZlYWYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.FRFUM24LHg8UDURvoYfN9tD0R17VBEaehdfbVRvDPeI)
-
사용자는 먼저 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.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkzNDY0OTcsIm5iZiI6MTczOTM0NjE5NywicGF0aCI6Ii82MjAwMTk0NC8zMTM0OTg4MjgtYTUzODA4NDktNWQwNy00N2NjLTlhMjQtZWNlZjUzM2M2MDZkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEyVDA3NDMxN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWRiODcxNzdkNGMxYzIwMzJlNDBmNjNmN2Y1M2Y2OTIwMDQ4NWY1NzY3ZGU0NDFlZjFlNGY0N2NkNjQ5NjllN2QmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.hWfoGqg7BLwJX8_IXuTCZhW4k5yksJPU5cijeh91tqY)
- 개발을 시작할 때는 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.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkzNDY0OTcsIm5iZiI6MTczOTM0NjE5NywicGF0aCI6Ii82MjAwMTk0NC8zMTM0OTg4MjYtMGMwZDI2YzYtM2ZlYy00YjIwLWFhMDItNmM5MWRlZTdhMDI0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEyVDA3NDMxN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTQ4ZjA5NjI4Y2E2NGM1Y2JjY2Y1MjkyNmE4NTJjZWMwNDUzYzQwNjY1NmJjNDU3YTY0MmQxNTBiMDM1ODY1ZGMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.KBNNtimFNBPUrG10LObXmga_NdFLm8Vh5E4DaQdrd5w)
- 기능 개발이 종료되면 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.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkzNDY0OTcsIm5iZiI6MTczOTM0NjE5NywicGF0aCI6Ii82MjAwMTk0NC8zMTM0OTg4MjUtNTMwZGQyOTItODg5NC00MDBhLWJiNzctZmJmZGQ2OTQ2ZjE3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEyVDA3NDMxN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTQzYzdkMTUwYTU2YzgxMzMyZWU0ZGRlNTkwMGVlODRmYzMzMzM0NWM2MzEwZDI3YWI1MzdjMzAyOGY3MmE3MWImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.2fd5-41IDejOgDa7eXgBzOAB7Px5izUmJM3PmEbR9fA)
- 만약 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 |