SSAMKO의 개발 이야기

[django] migration file 초기화 하기 본문

Django

[django] migration file 초기화 하기

SSAMKO 2021. 7. 2. 20:11
반응형

개발 초기에 model 이름을 변경한다던지 column을 추가한다던지 할 경우 기존의 migration 파일과 충돌이 나거나 migration파일이 지저분해지는 경우가 생기는데, 이럴때는 한번씩 migration file을 초기화 해주는 것이 좋다.

1. db 삭제

먼저 기존의 DB를 삭제해준다.

(mariaDB/mysql)DROP DATABASE {database};

2. 모든 migrations 스크립트 삭제

다음으로 모든 migrations 스크립트를 삭제한다.

이때 주의할 점은 프로젝트 폴더 내에 가상환경(venv)이 있을 경우 가상환경 내의 migration 모듈이 함께 삭제되지 않도록 해주어야한다. (아래 참고)

1. project home 디렉토리로 이동

2. find . -path "\*/migrations/\*.py" -not -name "\_\_init\_\_.py" -not -path "./venv/\*" -delete

가상환경 내 migration모듈이 함께 삭제되지 않도록 실행전-delete옵션을 빼고 확인

3. find . -path "\*/migrations/\*.pyc" -delete

3. makemigrations

다시 makemigrations를 실행해서 새로운 migration file을 생성한다.

반응형
Comments