728x90
프로젝트 목표
- 클론 코딩을 통해서 전체적인 프로젝트 개념 이해하기
- 다양한 기능들을 이용해서 실제로 사용되는 사이트 구성 및 기능 이해하기
- 목표를 설정하고 목표까지 가는 과정에대해서 이해하기
프로젝트 구현 기능 리스트
- 피드 생성
- 피드 목록 불러오기
- 회원가입
- 로그인
- 좋아요
- 댓글
- 북마크
- 프로필 페이지
- 프로필 사진 변경
- 피드 목록 필터 조회
목차
00. 프로젝트 초기 세팅
- [ 가상환경 생성 ]
- [ 가상환경 접속 ]
- [ 가상 환경 적용 모습 ]
- [ 장고 설치 ]
- [ 깃 허브 New Repository 생성 ]
- [ 깃허브 연결하기 ]
- [ 깃 허브 .gitignore 설정하기 ]
- [ 깃 허브 requirements.txt 설정하기 ]
- [ 장고 프로젝트 생성 ]
00. 프로젝트 초기 세팅
[ 가상환경 생성 ]
가상 환경 venv(이름) 설정
:: Terminal ::
:: Terminal ::
python3 -m venv venv
:: Terminal ::
[ 가상환경 접속 ]
가상환경 접속해제 = deactivate
Mac OS = source 가상환경명/bin/activate
Windows = source 가상환경명/Scripts/activate
:: Terminal ::
:: Terminal ::
source venv/bin/activate
:: Terminal ::
[ 가상 환경 적용 모습 ]
:: Terminal ::
:: Terminal ::
hanmariyang@ clone_instagram % # 기본
hanmariyang@ clone_instagram % source venv/bin/activate # 가상 환경 접속
(venv) hanmariyang@ clone_instagram % # 접속중
:: Terminal ::
[ 장고 설치 ]
:: Terminal ::
:: Terminal ::
pip install django
:: Terminal ::
[ 깃 허브 New Repository 생성 ]
- 깃허브 접속 (계정 생성 후 Repositories 들어가기)
- 아래 이미지에 표시되어있는 New 클릭하기
- Repository name 이름 설정하기 ( tip 깃이 관리하는 폴더랑 같은 이름으로 설정하는게 좋다. )
- Add a README file 꼭 체크가 해제된 상태에서 생성하기 ( 체크되어있다면 해제! 오류가 날수있음! )
- 모든게 확인 되었다면 Create repository 클릭하기
[ 깃 허브 연결하기 ]
아래 내용 순서대로 터미널에서 적고 깃허브 연결하기
:: Terminal ::
:: Terminal ::
git init # 현재 폴더를 깃 으로 관리하겠다고 선언 (숨긴 폴더로 .git 폴더 생성)
git add . # 변경 사항 스테이지에 올리기
git commit -m "first commit" # 스테이지에 올라온 내용 커밋하기
git branch -M main # 브런치명 master -> main 으로 변경
git remote add origin git@github.com:hanmariyang/clone_instagram.git
# 본인 깃 허브 주소 넣기 / 현재 깃으로 관리하는 폴더를 깃허브랑 연결 시키겠다.
git push -u origin main # 깃 허브로 푸쉬하기
:: Terminal ::
[ 깃 허브 .gitignore 설정하기 ]
- .gitignore
- 해당 파일로 깃 허브에 불필요한 파일 및 민감한 정보들을 제외하고 깃 허브로 푸쉬 할 수 있다.
- .gitignore 설정법
- 아래 참고 사이트에서 생성창에 자신의 맞는 OS, 언어 등을 적고 생성한다. ( 예시) Mac OS, Django, VisualStudoCode )
- 생성하고 나온 코드들을 .git 폴더랑 같은 위치에 .gitignore 라는 파일을 생성하여 안에 넣어준다.
:: .gitignore ::
# 생성시 나오는 .gitignore 코드 내용
:: .gitignore ::
# Created by https://www.toptal.com/developers/gitignore/api/macos,django,python
# Edit at https://www.toptal.com/developers/gitignore?templates=macos,django,python
### Django ###
*.log
*.pot
*.pyc
__pycache__/
local_settings.py
db.sqlite3
db.sqlite3-journal
media
# If your build process includes running collectstatic, then you probably don't need or want to include staticfiles/
# in your Git repository. Update and uncomment the following line accordingly.
# <django-project-name>/staticfiles/
### ~ 중략 ~ ###
# End of https://www.toptal.com/developers/gitignore/api/macos,django,python
:: .gitignore ::
[ 참고 사이트 ]
[ 깃 허브 requirements.txt 설정하기 ]
- requirements.txt
- 가상 환경에 설치한 pip 내용을 안에 넣어두어 깃 허브에 올릴 수 있다.
- 다른 가상환경에서도 해당 프로젝트에 똑같은 환경을 설치 할 수 있다.
- requirements.txt 설정법
- 터미널에 pip freeze > requirements.txt 를 적어 txt 파일 생성과 동시에 pip list를 안에 넣어준다.
- pip freeze : 해당 명령어는 현재 작업 환경(가상환경)에 설치되어있는 패키지의 리스트를 모두 출력해준다.
- pip freeze > requirements.txt : 패키지 리스트를 requirements.txt 에 넣어 생성해준다.
- 터미널에 pip install -r requirements.txt 를 명령해주면 해당 목록을 읽은 후 설치
- pip install -r requirements.txt : requirements.txt 에 적힌 버전으로 패키지를 설치하는 명령어
- 터미널에 pip freeze > requirements.txt 를 적어 txt 파일 생성과 동시에 pip list를 안에 넣어준다.
:: Terminal ::
pip freeze > requirements.txt # requirements.txt 를 만드는 명령어
pip install -r requirements.txt # requirements에 적힌 버전으로 패키지를 설치하는 명령어
:: Terminal ::
[ 장고 프로젝트 생성 ]
:: Terminal ::
django-admin startproject farmstagram
:: Terminal ::
위 명령어를 터미널에 적어주면 아래 처럼 폴더들이 생성!
: Terminal ::
(venv) hanmariyang@clone_instagram % django-admin startproject farmstagram .
(venv) hanmariyang@clone_instagram % ls
farmstagram manage.py requirements.txt venv
# 새로생성된 내용 : farmstagram, manage.py
# 기존 내용 : requirements.txt, venv
: Terminal ::
이렇게 우선 인스타그램 클론 코딩하기위한 초기 세팅을 완료!
아래는 참고한 강의 영상 링크를 추가하였다.
출처 : https://www.youtube.com/watch?v=M8UPyeF5DfM (mychew 님)
728x90
반응형
'coding > Project' 카테고리의 다른 글
[Django] Clone Coding - 01 - 장고 화면 뛰우기! (제로부터 시작하는 인스타그램) (0) | 2022.09.28 |
---|---|
[Python] 활용편 - 11 - 반복문 (for) 활용(for, list, dictionary, if) (1) | 2022.09.16 |
[Python] 활용편 - 10 - 반복문(while) 활용(while, if, try / except) (1) | 2022.09.16 |
[Python] 활용편 - 09 - 조건문 활용(if, elif, else, 등급표) (0) | 2022.09.15 |