[flutter] 플러터 build_runner와 Git Hooks 연동하기

플러터 앱을 개발하다 보면 build_runner를 사용하여 코드 생성 및 관리를 해야 하는 경우가 있습니다. 이때 Git Hooks와 build_runner를 연동하여 팀원들이 일관된 방식으로 코드를 생성하고 관리할 수 있습니다. 이번 포스트에서는 build_runner를 사용하여 코드를 자동으로 생성하고 Git Hooks를 설정하여 코드 생성을 자동화하는 방법에 대해 알아보겠습니다.

build_runner란 무엇인가요?

build_runner은 플러터와 다트 언어의 코드를 생성하고 관리하기 위한 강력한 도구입니다. 코드를 자동으로 생성하거나 변경을 감지하여 코드를 업데이트하는 데 사용됩니다. 보통 모델 클래스 또는 JSON 시리얼 라이저, 라우트 테이블, 코드 생성을 위한 어노테이션들을 사용할 때 build_runner를 활용합니다.

Git Hooks란 무엇인가요?

Git Hooks은 Git 레포지토리의 특정 이벤트에 대해 사용자 지정 스크립트를 실행할 수 있는 기능입니다. 이를 통해 코드 커밋, 푸시 등의 이벤트에 대한 사전 또는 사후 작업을 자동화할 수 있습니다.

build_runner와 Git Hooks 연동하기

1. build_runner 설정

먼저, build_runner를 설정합니다. build_runner 패키지를 pubspec.yaml 파일의 dev_dependencies에 추가하고 필요한 코드 생성 및 관리 작업을 설정합니다.

dev_dependencies:
  build_runner: ^2.1.4
  # 다른 의존성들...

2. Git Hooks 스크립트 작성

다음으로, Git Hooks 스크립트를 작성합니다. 먼저, Git 저장소의 .git/hooks 폴더에 pre-commit 스크립트 파일을 작성합니다.

#!/bin/sh

flutter pub get
flutter packages pub run build_runner build --delete-conflicting-outputs

위의 스크립트는 코드를 커밋하기 전에 flutter pub get 명령어로 의존성을 설치하고, flutter packages pub run build_runner build --delete-conflicting-outputs 명령어로 build_runner를 실행하여 코드를 자동으로 생성합니다.

3. pre-commit 스크립트 등록

마지막으로, 작성한 pre-commit 스크립트를 Git Hooks에 등록합니다.

chmod +x .git/hooks/pre-commit

이제 코드를 커밋하기 전에 항상 build_runner를 실행하여 코드를 자동으로 생성할 수 있습니다!

마무리

플러터 build_runner와 Git Hooks를 연동하여 코드 생성 및 관리를 자동화하는 방법에 대해 알아보았습니다. 이를 통해 개발자들은 일관된 코드 생성 방식을 유지하고, 팀 프로젝트의 품질을 향상시킬 수 있습니다. 여러분의 플러터 프로젝트에도 적용해 보세요!