- 콩닥콩닥은 시간이 흐르면 그리워질 우리의 학창시절,입학부터 졸업까지 당신의 설렘을 간직해드립니다.
- 콩닥콩닥은 캠퍼스 건물 별로 나만의 일기를 기록할 수 있는 서비스입니다.
- 일기를 기록하고, 해시태그 기능과 랭킹 시스템을 통해 다른 사람들과 교류할 수 있습니다.
- 날씨 기능, 디데이, 업로드 수에 따라 달라지는 코끼리 이미지 등 소소한 디테일을 살려 서비스 이용에 재미를 더했습니다.
https://www.python.org/ 에서 3.11 버전을 설치해주세요.
# 프로젝트를 생성하려는 폴더경로에서 git bash를 열고..
python3.11 -m venv venv
source venv/bin/activate
# 최초 1회만
pip install django
# manage.py 포함된 경로에서
# Model을 건들이지 않았다면, 최초 1회만 실행
python manage.py makemigrations
python manage.py migrate
python manage.py runserver
# 프로젝트를 생성하려는 폴더경로에서 git bash를 열고..
pip install virtualenv
virtualenv venv --python=3.11
source venv/Scripts/activate
# 최초 1회만
pip install django
# manage.py 포함된 경로에서
# Model을 건들이지 않았다면, 최초 1회만 실행
python manage.py makemigrations
python manage.py migrate
python manage.py runserver
- PD : Figma ( 디자인 보러가기 )
- Frontend : HTML, CSS, JavaScript
- Backend : Python, Django
- 버전 및 이슈관리 : Github, Github Issues
- 협업 툴 : Discord, Notion
- Git-flow 전략을 기반으로 main, develop 브랜치와 feature 보조 브랜치를 운용했습니다.
- main, develop, Feat 브랜치로 나누어 개발을 하였습니다. - main 브랜치는 무결성 검증 이후 단계에서만 사용하는 브랜치입니다. - develop 브랜치는 개발 단계에서 git-flow의 master 역할을 하는 브랜치입니다. - Feat 브랜치는 기능 단위로 독립적인 개발 환경을 위하여 사용하고 merge 후 각 브랜치를 삭제해주었습니다.
-
사용자는 먼저 Upstream Repository를 자신의 GitHub 계정으로 포크(fork)하고, 이 포크(fork)된 Origin Repository를 로컬 컴퓨터로 Clone하여 작업합니다.
-
그 후 개발한 변경 사항을 Origin Repository로 Push합니다. 이후 Upstream Repository로 풀 PR를 보내 변경 사항을 제안합니다.
-
PR이 완료 된 후 Upstream Repository의 최신 변경 사항을 가져오기 위해 Local에서 풀(pull)을 사용합니다.
- 개발을 시작할 때는 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 이후 기능 개발을 진행합니다.
- 기능 개발이 종료되면 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를 해줍니다.
- 만약 Release Version을 낼 때는 Upstream의 dev Branch에서 main Branch로 PR을 날립니다.
- 해당 Repository의 모든 사용자가 Code를 재확인한 후 Merge를 합니다.
Commit Type | Description |
---|---|
Feat | 기능 개발 |
Fix | 버그 수정 |
Docs | 문서 수정 |
Style | 코드 formatting, 세미콜론 누락 등 코드 자체의 변경이 없는 경우 |
Refactor | 코드 리팩토링 |
Chore | package manager 수정 등 |
Design | CSS 등 사용자 UI 변경 |
├── README.md
├── LICENSE
├── .gitignore
├── project
│ ├── .gitignore
│ ├── db.sqlite3
│ ├── manage.py
│ ├── Pipfile
│ ├── project
│ │ ├── __init__.py
│ │ ├── asgi.py
│ │ ├── settings.py
│ │ ├── urls.py
│ │ ├── wsgi.py
│ │ ├── static
│ │ │ ├── assets
│ │ │ │ ├── font
│ │ │ │ │ ├── Sagak-sagak.ttf
│ │ │ │ │ ├── Human-beomseok.ttf
│ │ │ │ ├── images
│ │ │ │ │ ├── a_screen.svg
│ │ │ │ │ ├── arrow.svg
│ │ │ │ │ ├── b_screen.svg
│ │ │ │ │ ├── ...
│ │ │ ├── css
│ │ │ │ ├── base
│ │ │ │ │ ├── index.css
│ │ │ │ │ ├── reset.css
│ │ │ │ ├── shared
│ │ │ │ │ ├── topnav.css
│ │ │ │ ├── all_posts.css
│ │ │ │ ├── category_a.css
│ │ │ │ ├── category_b.css
│ │ │ │ ├── category_c.css
│ │ │ │ ├── categorypage.css
│ │ │ │ ├── create_post.css
│ │ │ │ ├── edit.css
│ │ │ │ ├── login.css
│ │ │ │ ├── main.css
│ │ │ │ ├── post_detail.css
│ │ │ │ ├── search.css
│ │ │ │ ├── signup_done.css
│ │ │ │ ├── signup.css
│ │ │ ├── js
│ │ │ │ ├── allPost.js
│ │ │ │ ├── backControl.js
│ │ │ │ ├── category.js
│ │ │ │ ├── createPost.js
│ │ │ │ ├── editPost.js
│ │ │ │ ├── login.js
│ │ │ │ ├── main.js
│ │ │ │ ├── placeFrame.js
│ │ │ │ ├── postDetail.js
│ │ │ │ ├── search.js
│ │ │ │ ├── signup.js
│ │ │ │ ├── topnav.js
│ │ │ │ ├── weather.js
│ │ ├── templates
│ │ │ ├── shared
│ │ │ │ ├── _topnav.html
│ │ │ ├── base.html
│ └── main
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ ├── utils.py
│ ├── views.py
│ ├── templates
│ │ ├── all_posts.html
│ │ ├── cateogrypage.html
│ │ ├── create_post.html
│ │ ├── edit_post.html
│ │ ├── firstpage.html
│ │ ├── mainpage.html
│ │ ├── post_detail.html
│ │ ├── search.html
│ │ ├── secondpage_a.html
│ │ ├── secondpage_b.html
│ │ ├── secondpage_c.html
│ │ ├── signup_done.html
│ │ ├── signup.html
- 전체 개발 기간 : 2024-06-16 ~ 2024-06-26
- GitHub Issues를 사용하여 진행 상황을 공유했습니다.
- 매일 스크럼 회의를 진행하며 작업 순서와 방향성에 대한 고민을 나누고 노션에 회의 내용을 기록했습니다.