Git 저장소를 LLM에 친화적인 텍스트 인제스트로 변환합니다.
GitHub URL에서 hub
를 ingest
로 바꾸면 해당 요약에 접근할 수 있습니다.
gitingest.com · Chrome 확장 프로그램 · Firefox 애드온
Deutsch | Español | Français | 日本語 | 한국어 | Português | Русский | 中文
Gitingest는 PyPI에서 사용 가능합니다.
pip
를 사용하여 설치할 수 있습니다:
pip install gitingest
하지만 pipx
를 사용하여 설치하는 것이 좋은 생각일 수 있습니다.
선호하는 패키지 관리자를 사용하여 pipx
를 설치할 수 있습니다.
brew install pipx
apt install pipx
scoop install pipx
...
pipx를 처음 사용하는 경우 다음을 실행하세요:
pipx ensurepath
# install gitingest
pipx install gitingest
확장 프로그램은 lcandy2/gitingest-extension에서 오픈 소스로 제공됩니다.
이슈 및 기능 요청은 해당 저장소로 환영합니다.
gitingest
명령줄 도구를 사용하면 코드베이스를 분석하고 내용의 텍스트 덤프를 생성할 수 있습니다.
# Basic usage (writes to digest.txt by default)
gitingest /path/to/directory
# From URL
gitingest https://github.com/cyclotruc/gitingest
# or from specific subdirectory
gitingest https://github.com/cyclotruc/gitingest/tree/main/src/gitingest/utils
비공개 저장소의 경우 --token/-t
옵션을 사용하세요.
# Get your token from https://github.com/settings/personal-access-tokens
gitingest https://github.com/username/private-repo --token github_pat_...
# Or set it as an environment variable
export GITHUB_TOKEN=github_pat_...
gitingest https://github.com/username/private-repo
기본적으로 .gitignore
에 나열된 파일은 건너뜁니다. 요약에 해당 파일이 필요한 경우 --include-gitignored
를 사용하세요.
기본적으로 요약은 현재 작업 디렉토리의 텍스트 파일(digest.txt
)에 기록됩니다. 출력을 사용자 정의하는 두 가지 방법이 있습니다:
--output/-o <filename>
을 사용하여 특정 파일에 기록합니다.--output/-o -
를 사용하여 직접 STDOUT
으로 출력합니다(다른 도구로 파이핑할 때 유용).다음 명령어로 더 많은 옵션과 사용법 세부 정보를 확인하세요:
gitingest --help
# Synchronous usage
from gitingest import ingest
summary, tree, content = ingest("path/to/directory")
# or from URL
summary, tree, content = ingest("https://github.com/cyclotruc/gitingest")
# or from a specific subdirectory
summary, tree, content = ingest("https://github.com/cyclotruc/gitingest/tree/main/src/gitingest/utils")
비공개 저장소의 경우 토큰을 전달할 수 있습니다:
# Using token parameter
summary, tree, content = ingest("https://github.com/username/private-repo", token="github_pat_...")
# Or set it as an environment variable
import os
os.environ["GITHUB_TOKEN"] = "github_pat_..."
summary, tree, content = ingest("https://github.com/username/private-repo")
기본적으로 이는 파일을 작성하지 않지만 output
인수를 통해 활성화할 수 있습니다.
# Asynchronous usage
from gitingest import ingest_async
import asyncio
result = asyncio.run(ingest_async("path/to/directory"))
from gitingest import ingest_async
# Use await directly in Jupyter
summary, tree, content = await ingest_async("path/to/directory")
이는 Jupyter 노트북이 기본적으로 비동기식이기 때문입니다.
이미지 빌드:
docker build -t gitingest .
컨테이너 실행:
docker run -d --name gitingest -p 8000:8000 gitingest
애플리케이션은 http://localhost:8000
에서 사용 가능합니다.
도메인에서 호스팅하는 경우 env 변수 ALLOWED_HOSTS
를 통해 허용된 호스트 이름을 지정할 수 있습니다.
# Default: "gitingest.com, *.gitingest.com, localhost, 127.0.0.1".
ALLOWED_HOSTS="example.com, localhost, 127.0.0.1"
Gitingest는 초보 기여자에게 친숙하도록 설계되었으며, 간단한 Python 및 HTML 코드베이스를 가지고 있습니다. 코드 작업 중 도움이 필요하면 Discord로 문의해 주세요. 풀 리퀘스트를 만드는 방법에 대한 자세한 지침은 CONTRIBUTING.md를 참조하세요.
NPM 대안 📦 Repomix를 확인하세요: https://github.com/yamadashy/repomix