English | 简体中文
REpository ArchivER(REAPER)是一个用于从任何Git服务器归档 Git 仓库的工具。
curl -sSfL https://raw.githubusercontent.com/LeslieLeung/reaper/main/install.sh | sh -s -- -b /usr/local/bin
或从 Release 获取。
你需要创建一个配置文件来使用REAPER。
repository:
- name: reaper
url: github.com/leslieleung/reaper
cron: "0 * * * *"
storage:
- localFile
- backblaze
useCache: True
storage:
- name: localFile
type: file
path: ./repo
- name: backblaze
type: s3
endpoint: s3.us-west-000.backblazeb2.com
region: us-west-000
bucket: your-bucket-name
accessKeyID: your-access-key-id
secretAccessKey: your-secret-access-key
然后,你可以使用配置文件运行REAPER。
reaper -c config.yaml
# 或者如果你的配置文件名为config.yaml,只需调用reaper
reaper
rip命令会归档在配置中定义的单个 Git 仓库。
reaper rip reaper
run命令会归档在配置中定义的所有 Git 仓库。
reaper run
结合cron,你可以定期归档 Git 仓库。
bury命令会归档指定 Git 仓库的所有发布产物。
reaper bury reaper
daemon命令会启动一个守护进程,它会在后台运行,归档在配置中定义的所有 Git 仓库。
reaper daemon
# 使用 nohup 后台运行
nohup reaper daemon &
有关配置,你可以查看此示例。
更多细节,可查看配置文档。
REAPER支持多种存储类型。
一次性运行。
- 修改 ${pwd}/config/example.config.yaml 为你的配置文件本地路径。
- 自定义 ${pwd}/repo:/repo 为你需要的存储路径。容器内路径需要与配置文件中的路径一致。
docker run --rm \
-v ${pwd}/config/example.config.yaml:/config.yaml \
-v ${pwd}/repo:/repo \
leslieleung/reaper:latest \
run
示例Compose配置,见 docker-compose.yml。
git clone https://github.com/leslieleung/reaper.git
docker compose up -d
见 FAQ。
$ claude mcp add reaper \
-- python -m otcore.mcp_server <graph>