국회도서관 자료검색 서비스

django app 생성하고 소스에 git 설치하기 #2

유니네 라이브러리 2024. 7. 31. 16:48

Django에서는 프로젝트를 여러 개의 **앱(App)**으로 구성하여 개발할 수 있다.

또한, Git을 이용해 프로젝트의 소스 코드를 효율적으로 관리할 수 있다.

 

이번 글에서는 Django 앱을 생성하는 방법Git을 설정하는 과정을 다뤄본다.

 

1. Django 앱(App) 생성

 

Django 프로젝트는 여러 개의 **앱(App)**으로 구성된다.

**앱(App)**은 특정한 기능을 수행하는 웹 애플리케이션 단위라고 볼 수 있다.

 

📌 이전 단계

이전에 Django 프로젝트(pubdapi)를 생성했으므로,

해당 폴더로 이동하여 앱을 생성한다.

cd pubdapi  # 프로젝트 폴더로 이동
ls          # 현재 폴더 구조 확인

 

예제 실행 결과:

(pubd_api) pubdapi % ls
db.sqlite3	manage.py	pubdapi

 

📌 새로운 앱 생성하기

 

이제 새로운 앱 pubdapp을 생성한다.

python3 manage.py startapp pubdapp

 

📌 앱 생성 후 폴더 구조 확인

(pubd_api) pubdapi % ls
db.sqlite3	manage.py	pubdapi	pubdapp

 

앱이 정상적으로 생성되었으며,

pubdapp 폴더 내부에는 다음과 같은 기본 파일이 포함된다.

pubdapp/
│-- __init__.py
│-- admin.py
│-- apps.py
│-- models.py
│-- tests.py
│-- views.py
│-- migrations/  
│   └── __init__.py

 

앱을 프로젝트에 등록하기

앱을 생성한 후, settings.py에서 등록해야 Django에서 인식된다.

 

📂 pubdapi/settings.py 파일을 열어 INSTALLED_APPS에 추가한다.

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'pubdapp',  # 추가한 앱 등록
]

 

2. Git으로 프로젝트 버전 관리

 

Git을 사용하면 코드 변경 이력 관리, 협업, 백업이 가능해진다.

 

📌 Git 초기화

Django 프로젝트 폴더(pubdapi)에서 Git을 초기화한다.

git init

 

실행 결과:

(pubd_api) pubdapi % git init
Initialized empty Git repository in ../public_data/pubd_api/pubdapi/.git/

 

이제 프로젝트가 Git으로 관리된다.

 

📌 파일 추가하기 (git add .)

현재 프로젝트의 모든 파일을 Git에 추가한다.

git add .

 

📌 첫 번째 커밋하기 (git commit)

Git에 처음으로 저장하는 과정이다.

git commit -m "First commit: Django 프로젝트 및 앱 생성"

 

📌 커밋 확인하기 (git log)

저장된 변경 내역을 확인할 수 있다.

git log

 

실행 결과:

commit 4293921ffb5162cad7b4efd268061d69e5dbfe9c (HEAD -> main)
Author: 
Date:   

    First commit: Django 프로젝트 및 앱 생성

 

Git이 정상적으로 설정되었다.

 

3. 마무리

 

이번 글에서는 Django 앱을 생성하고, Git을 설정하는 과정을 진행했다.

 

정리하면?

✔️ Django 프로젝트에 새로운 앱(pubdapp) 을 생성함

✔️ settings.py앱을 등록하여 Django에서 인식하도록 설정

✔️ Git을 초기화하고 버전 관리(Git init, commit) 설정

 

📌 다음 글에서는?

다음 글에서는 Django 프로젝트의 기본적인 구조와 설정(Language, Timezone 변경) 을 알아본다. 🚀

 

👉 [다음 글] Django Cycle, 프로젝트 구조 및 Language, Timezone 변경하기