usage.mdโข5.43 kB
# ๊ธฐ๋ณธ ์ฌ์ฉ๋ฒ
## ๋น ๋ฅธ ์์
์ ์ฅ์ ์ ์ฒด๋ฅผ ํจํค์ง:
```bash
repomix
```
## ์ผ๋ฐ์ ์ธ ์ฌ์ฉ ์ฌ๋ก
### ํน์ ๋๋ ํ ๋ฆฌ ํจํค์ง
```bash
repomix path/to/directory
```
### ํน์ ํ์ผ ํฌํจ
[glob ํจํด](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) ์ฌ์ฉ:
```bash
repomix --include "src/**/*.ts,**/*.md"
```
### ํ์ผ ์ ์ธ
```bash
repomix --ignore "**/*.log,tmp/"
```
### ์๊ฒฉ ์ ์ฅ์ ์ฒ๋ฆฌ
```bash
# GitHub URL ์ฌ์ฉ
repomix --remote https://github.com/user/repo
# ๋จ์ถํ ์ฌ์ฉ
repomix --remote user/repo
# ํน์ ๋ธ๋์น/ํ๊ทธ/์ปค๋ฐ
repomix --remote user/repo --remote-branch main
repomix --remote user/repo --remote-branch 935b695
```
### ํ์ผ ๋ชฉ๋ก ์
๋ ฅ (stdin)
์ต๊ณ ์ ์ ์ฐ์ฑ์ ์ํด stdin์ ํตํด ํ์ผ ๊ฒฝ๋ก๋ฅผ ์ ๋ฌํ์ธ์:
```bash
# find ๋ช
๋ น ์ฌ์ฉ
find src -name "*.ts" -type f | repomix --stdin
# git์ ์ฌ์ฉํ์ฌ ์ถ์ ๋ ํ์ผ ๊ฐ์ ธ์ค๊ธฐ
git ls-files "*.ts" | repomix --stdin
# ripgrep (rg) ์ ์ฌ์ฉํ์ฌ ํ์ผ ์ฐพ๊ธฐ
rg --files --type ts | repomix --stdin
# grep์ ์ฌ์ฉํ์ฌ ํน์ ๋ด์ฉ์ ํฌํจํ๋ ํ์ผ ์ฐพ๊ธฐ
grep -l "TODO" **/*.ts | repomix --stdin
# ripgrep์ ์ฌ์ฉํ์ฌ ํน์ ๋ด์ฉ์ ํฌํจํ๋ ํ์ผ ์ฐพ๊ธฐ
rg -l "TODO|FIXME" --type ts | repomix --stdin
# sharkdp/fd ๋ฅผ ์ฌ์ฉํ์ฌ ํ์ผ ์ฐพ๊ธฐ
fd -e ts | repomix --stdin
# fzf๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ ํ์ผ์์ ์ ํ
fzf -m | repomix --stdin
# fzf๋ฅผ ์ฌ์ฉํ ๋ํํ ํ์ผ ์ ํ
find . -name "*.ts" -type f | fzf -m | repomix --stdin
# glob ํจํด๊ณผ ํจ๊ป ls ์ฌ์ฉ
ls src/**/*.ts | repomix --stdin
# ํ์ผ ๊ฒฝ๋ก๊ฐ ํฌํจ๋ ํ์ผ์์
cat file-list.txt | repomix --stdin
# echo๋ก ์ง์ ์
๋ ฅ
echo -e "src/index.ts\nsrc/utils.ts" | repomix --stdin
```
`--stdin` ์ต์
์ ์ฌ์ฉํ๋ฉด ํ์ผ ๊ฒฝ๋ก ๋ชฉ๋ก์ Repomix๋ก ํ์ดํํ ์ ์์ด ํจํนํ ํ์ผ ์ ํ์ ์ต๊ณ ์ ์ ์ฐ์ฑ์ ์ ๊ณตํฉ๋๋ค.
`--stdin`์ ์ฌ์ฉํ ๋ ์ง์ ๋ ํ์ผ์ ์ค์ง์ ์ผ๋ก include ํจํด์ ์ถ๊ฐ๋ฉ๋๋ค. ์ฆ, ์ผ๋ฐ์ ์ธ include ๋ฐ ignore ๋์์ด ์ฌ์ ํ ์ ์ฉ๋๋ฏ๋ก stdin์ผ๋ก ์ง์ ํ ํ์ผ๋ ignore ํจํด๊ณผ ์ผ์นํ๋ฉด ์ ์ธ๋ฉ๋๋ค.
> [!NOTE]
> `--stdin`์ ์ฌ์ฉํ ๋ ํ์ผ ๊ฒฝ๋ก๋ ์๋ ๊ฒฝ๋ก ๋๋ ์ ๋ ๊ฒฝ๋ก๊ฐ ๋ ์ ์์ผ๋ฉฐ, Repomix๊ฐ ์๋์ผ๋ก ๊ฒฝ๋ก ํด์๊ณผ ์ค๋ณต ์ ๊ฑฐ๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.
### ์ฝ๋ ์์ถ
```bash
repomix --compress
# ์๊ฒฉ ์ ์ฅ์์์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค:
repomix --remote yamadashy/repomix --compress
```
### Git ํตํฉ
AI ๋ถ์์ ์ํ ๊ฐ๋ฐ ์ปจํ
์คํธ๋ฅผ ์ ๊ณตํ๊ธฐ ์ํด Git ์ ๋ณด๋ฅผ ํฌํจํฉ๋๋ค:
```bash
# git ์ฐจ์ด์ ํฌํจ (์ปค๋ฐ๋์ง ์์ ๋ณ๊ฒฝ์ฌํญ)
repomix --include-diffs
# git ์ปค๋ฐ ๋ก๊ทธ ํฌํจ (๊ธฐ๋ณธ๊ฐ: ์ต๊ทผ 50๊ฐ ์ปค๋ฐ)
repomix --include-logs
# ํน์ ์์ ์ปค๋ฐ ํฌํจ
repomix --include-logs --include-logs-count 10
# ์ฐจ์ด์ ๊ณผ ๋ก๊ทธ ๋ชจ๋ ํฌํจ
repomix --include-diffs --include-logs
```
์ด๊ฒ์ ๋ค์๊ณผ ๊ฐ์ ๊ท์คํ ์ปจํ
์คํธ๋ฅผ ์ถ๊ฐํฉ๋๋ค:
- **์ต๊ทผ ๋ณ๊ฒฝ์ฌํญ**: Git ์ฐจ์ด์ ์ ์ปค๋ฐ๋์ง ์์ ์์ ์ฌํญ์ ๋ณด์ฌ์ค๋๋ค
- **๊ฐ๋ฐ ํจํด**: Git ๋ก๊ทธ๋ ์ผ๋ฐ์ ์ผ๋ก ํจ๊ป ๋ณ๊ฒฝ๋๋ ํ์ผ์ ๋๋ฌ๋
๋๋ค
- **์ปค๋ฐ ํ์คํ ๋ฆฌ**: ์ต๊ทผ ์ปค๋ฐ ๋ฉ์์ง๋ ๊ฐ๋ฐ ์ด์ ์ ๋ํ ํต์ฐฐ์ ์ ๊ณตํฉ๋๋ค
- **ํ์ผ ๊ด๊ณ**: ๊ฐ์ ์ปค๋ฐ์์ ์์ ๋๋ ํ์ผ๋ค์ ๋ํ ์ดํด
### ํ ํฐ ์ ์ต์ ํ
์ฝ๋๋ฒ ์ด์ค์ ํ ํฐ ๋ถํฌ๋ฅผ ์ดํดํ๋ ๊ฒ์ AI ์ํธ ์์ฉ์ ์ต์ ํํ๋ ๋ฐ ์ค์ํฉ๋๋ค. `--token-count-tree` ์ต์
์ ์ฌ์ฉํ์ฌ ํ๋ก์ ํธ ์ ์ฒด์ ํ ํฐ ์ฌ์ฉ๋์ ์๊ฐํํ์ธ์:
```bash
repomix --token-count-tree
```
์ด๋ ๊ฒ ํ๋ฉด ํ ํฐ ์์ ํจ๊ป ์ฝ๋๋ฒ ์ด์ค์ ๊ณ์ธต ๋ทฐ๊ฐ ํ์๋ฉ๋๋ค:
```
๐ข Token Count Tree:
โโโโโโโโโโโโโโโโโโโโ
โโโ src/ (70,925 tokens)
โโโ cli/ (12,714 tokens)
โ โโโ actions/ (7,546 tokens)
โ โโโ reporters/ (990 tokens)
โโโ core/ (41,600 tokens)
โโโ file/ (10,098 tokens)
โโโ output/ (5,808 tokens)
```
์ต์ ํ ํฐ ์๊ณ๊ฐ์ ์ค์ ํ์ฌ ํฐ ํ์ผ์ ์ง์คํ ์๋ ์์ต๋๋ค:
```bash
repomix --token-count-tree 1000 # 1000๊ฐ ์ด์์ ํ ํฐ์ ๊ฐ์ง ํ์ผ/๋๋ ํ ๋ฆฌ๋ง ํ์
```
์ด๋ฅผ ํตํด ๋ค์์ ์ํํ ์ ์์ต๋๋ค:
- **ํ ํฐ์ด ๋ง์ ํ์ผ ์๋ณ** - AI ์ปจํ
์คํธ ์ ํ์ ์ด๊ณผํ ์ ์๋ ํ์ผ ๋ฐ๊ฒฌ
- **ํ์ผ ์ ํ ์ต์ ํ** - `--include` ๋ฐ `--ignore` ํจํด ์ฌ์ฉ
- **์์ถ ์ ๋ต ๊ณํ** - ๊ฐ์ฅ ํฐ ๊ธฐ์ฌ์๋ฅผ ๋์์ผ๋ก ํ๋ ์ ๋ต
- **์ฝํ
์ธ ์ ์ปจํ
์คํธ์ ๊ท ํ** - AI ๋ถ์์ ์ํ ์ฝ๋ ์ค๋น ์ ๊ท ํ ์กฐ์
## ์ถ๋ ฅ ํ์
### XML (๊ธฐ๋ณธ๊ฐ)
```bash
repomix --style xml
```
### Markdown
```bash
repomix --style markdown
```
### JSON
```bash
repomix --style json
```
### ์ผ๋ฐ ํ
์คํธ
```bash
repomix --style plain
```
## ์ถ๊ฐ ์ต์
### ์ฃผ์ ์ ๊ฑฐ
```bash
repomix --remove-comments
```
### ํ ๋ฒํธ ํ์
```bash
repomix --output-show-line-numbers
```
### ํด๋ฆฝ๋ณด๋์ ๋ณต์ฌ
```bash
repomix --copy
```
### ๋ณด์ ๊ฒ์ฌ ๋นํ์ฑํ
```bash
repomix --no-security-check
```
## ์ค์
์ค์ ํ์ผ ์ด๊ธฐํ:
```bash
repomix --init
```
๋ ์์ธํ ์ค์ ์ต์
์ [์ค์ ๊ฐ์ด๋](/ko/guide/configuration)๋ฅผ ์ฐธ์กฐํ์ธ์.