Beagle, AST 트리를 저장하는 소스 코드 관리 시스템
발행: (2026년 3월 8일 PM 10:28 GMT+9)
2 분 소요
원문: Hacker News
Source: Hacker News
Beagle SCM
Beagle은 바이너리 블롭이 아니라 AST 트리를 저장하는 소스 코드 관리 시스템입니다.
일반적인 아이디어는 코드를 위한 데이터베이스이며, 모든 코드‑관련 활동의 허브이자 티켓, CI 결과 등 모든 관련 데이터를 저장하는 공간입니다.
백엔드 스토어는 사실상 어떤 키‑값 데이터베이스도 될 수 있습니다 (현재는 RocksDB).
데이터 형식 AST BASON은 CRDT와 유사합니다.
Beagle은 초기 단계이며 실험적입니다. 자체 호스팅을 제공하지만, 그 외는 보장되지 않습니다. 사용은 본인 책임으로 진행하십시오.
추가 읽을거리
사용 예시
# Initial POST of a project. We specify repo, project path.
# Absence of http: or ssh: makes it local to the store in $HOME/.be
$ be post //replicated.live/@gritzko/librdx
...
OK h ast/tree-sitter/point.h
OK h ast/tree-sitter/parser.h
OK c ast/tree-sitter/query.c
OK text ast/verilog/LICENSE
...million more lines...
# Inspect RocksDB inners just out of curiosity.
$ ls $HOME/.be/replicated.live/
# Inspect worktree/repo state
$ cat .be
//replicated.live/@gritzko/librdx
$ be
repo: replicated.live
project: /@gritzko/librdx
branches: *main
base files: 574, waypoints: 0
$ cd /some/other/dir
$ be get //replicated.live/@gritzko/librdx
...a million lines...
OK h rdx/test/YX.h
OK h rdx/test/ZE.h
OK sh rdx/test/http-test.sh
OK sh rdx/test/query-test.sh
OK sh scripts/ci-fast.sh
$ cd librdx
$ be
repo: replicated.live
project: /@gritzko/librdx
branches: *main
base files: 574, waypoints: 0