Repolode
pydoit

pydoit/doit

Python 함수로 작업을 정의하고, 최신 상태인 작업은 건너뛰는 Python 작업 실행기이자 빌드 도구입니다.

스타
2,096
포크
204
열린 이슈
112
마지막 커밋
2개월 전

어떤 프로젝트인가요?

doit은 make와 비슷한 작업 관리 및 자동화 도구지만, 전용 DSL이나 YAML 대신 일반 Python 함수와 딕셔너리로 작업을 작성합니다. 작업은 dodo.py 파일에 선언하며, doit은 의존성 순서에 따라 실행합니다.

파일 의존성과 타깃을 추적하고 결과를 캐시해, 마지막 실행 이후 입력이 바뀌지 않은 작업은 건너뜁니다. 하나의 함수에서 하위 작업을 생성하고, calc_dep로 의존성을 동적으로 계산하며, multiprocessing이나 threading으로 작업을 병렬 실행할 수 있습니다.

명령, 리포터, 백엔드, 작업 로더를 지원하는 플러그인 아키텍처로 확장할 수 있어, 작업에서 작성하는 Python 코드로 원하는 라이브러리를 사용할 수 있습니다.

핵심 기능

  • 01의존성이 변경된 작업만 다시 실행하는 증분 빌드
  • 02일반 Python 함수와 딕셔너리로 작업 정의
  • 03작업 그래프의 의존성 순서에 따른 실행
  • 04multiprocessing 또는 threading을 통한 병렬 실행
  • 05calc_dep를 사용한 하위 작업 생성 및 동적 의존성 계산
  • 06명령, 리포터, 백엔드, 로더용 플러그인 시스템

활용 사례

  • 파일 기반 증분 빌드가 필요한 프로젝트의 빌드 단계 자동화
  • Python으로 작성된 데이터 처리 파이프라인 오케스트레이션
  • 버전 관리와 의존성 추적이 가능한 Python 작업으로 임시 셸 스크립트 대체

빠른 시작

  1. 1

    PyPI에서 doit를 설치합니다

    pip install doit
  2. 2

    태스크 함수가 포함된 dodo.py 파일을 만듭니다(README의 Quick Example 참고)

  3. 3

    dodo.py가 있는 디렉터리에서 doit를 실행합니다

    doit

포함된 컬렉션

토픽

자주 묻는 질문

doit은(는) 무엇인가요?
Python 함수로 작업을 정의하고, 최신 상태인 작업은 건너뛰는 Python 작업 실행기이자 빌드 도구입니다. doit은 make와 비슷한 작업 관리 및 자동화 도구지만, 전용 DSL이나 YAML 대신 일반 Python 함수와 딕셔너리로 작업을 작성합니다. 작업은 dodo.py 파일에 선언하며, doit은 의존성 순서에 따라 실행합니다.
doit은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
doit은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
doit은(는) 아직 유지보수되고 있나요?
6개월 이내 업데이트. doit의 마지막 커밋은 2026년 9월 21일입니다.
doit은(는) 어디에 사용할 수 있나요?
파일 기반 증분 빌드가 필요한 프로젝트의 빌드 단계 자동화 Python으로 작성된 데이터 처리 파이프라인 오케스트레이션 버전 관리와 의존성 추적이 가능한 Python 작업으로 임시 셸 스크립트 대체
doit는 어떻게 설치하나요?
PyPI에서 doit를 설치합니다: pip install doit 태스크 함수가 포함된 dodo.py 파일을 만듭니다(README의 Quick Example 참고) dodo.py가 있는 디렉터리에서 doit를 실행합니다: doit
doit은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/pydoit/doit

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트