EpicGames/lore
GitHub: EpicGames/lore
Lore 是 Epic Games 开发的下一代开源版本控制系统,解决代码与大型二进制资源混合管理场景下的可扩展性难题。
Stars: 6922 | Forks: 290
目录
- [关于 Lore](#about-lore)
- [开始使用 Lore](#get-started-with-lore)
- [概述](#overview)
- [Lore 的架构](#lores-architecture)
- [Lore 的仓库](#lores-repositories)
- [完全开源](#fully-open-source)
- [贡献](#contributing)
- [许可证](#license)
- [联系与社区](#contact-and-community)
## 关于 Lore
Lore 是一个开源版本控制系统,旨在为数据和团队提供前所未有的可扩展性。它针对结合了代码和大型二进制资源的项目(包括游戏和娱乐)进行了优化,同时满足开发者和艺术家的需求。
(返回顶部)
## 开始使用 Lore
- **快速入门** — 按照[快速入门指南](https://epicgames.github.io/lore/tutorials/quickstart/)安装 Lore 并进行你的第一次提交。
- **阅读文档** — 深入了解 [Lore 文档](https://epicgames.github.io/lore/)中的理念与架构。
- **有疑问?** — [FAQ](https://epicgames.github.io/lore/faq/) 涵盖了许可证、支持的操作系统平台、生产就绪情况,以及 Lore 与其他版本控制系统的对比。
- **了解 Lore 的未来规划** — [路线图](https://epicgames.github.io/lore/roadmap/) 按时间跨度列出了核心功能,从可扩展的锁定机制到开源的桌面客户端。
- **加入交流** — 在 [Discord](https://discord.gg/E4SFJKRPbg) 上与我们及我们的社区聊天。
或者立即尝试 — 安装 Lore 并在 demo 模式下启动一个本地服务器:
**macOS / Linux**
```
curl -fsSL https://raw.githubusercontent.com/EpicGames/lore/main/scripts/install.sh | bash -s -- --demo
```
**Windows (PowerShell)**
```
$env:LORE_DEMO=1; irm https://raw.githubusercontent.com/EpicGames/lore/main/scripts/install.ps1 | iex
```
(返回顶部)
## 概述
- **设置简单,按需扩展** — 几分钟内即可在本地模式下开始使用。然后,根据需要随时随地进行扩展。
- **快速高效的流程** — 得益于共享、可重用的数据和按需下载,扩展过程不会出现减速。
- **自由的分支** — 快速轻松地创建、管理和同步分支,自由地进行实验、迭代和发布。
- **值得信赖的历史记录** — 借助 Lore 可验证的防篡改事实来源,自信地跟踪和管理版本。
- **直观的界面** — 通过 CLI 享受一对一的完整 Lore 功能访问。
- **全功能 API** — 通过 C/C++、C#、Rust、Go、Python 或 JavaScript 扩展、自定义和集成 Lore。
(返回顶部)
## Lore 的架构
Lore 是一个集中式、基于内容寻址的版本控制系统,它将仓库状态表示为 Merkle 树和不可变的修订链,针对二进制优先存储、去重以及大规模下的稀疏/按需数据水合进行了优化。有关完整的模型——磁盘格式、分块内部结构以及 Merkle 树的机制——请阅读[系统设计文档](https://epicgames.github.io/lore/explanation/system-design/)。
### 核心亮点
- **基于内容寻址的存储** — 仓库数据通过内容哈希存储和引用在 Merkle 树中,从而实现快速比较、完整性检查,以及在历史记录和分支间的重用。
- **不可变的修订链** — 修订版本的哈希签名是从其修订状态(包括父修订哈希和包含的数据哈希)派生而来的,形成了一条具有密码学完整性的不可变链。
- **针对大文件的分块存储** — 文件作为带有索引查找的可重用分块进行存储,减少了重复,并为大型二进制资源实现了高效的更新和传输。
- **按需水合与稀疏工作区** — 工作区可以通过仅在需要时获取文件数据来保持轻量化,因此您无需预先下载所有内容。
- **带有缓存的集中式服务** — 基于服务的架构在持久化存储之前使用缓存,以扩大大型团队和仓库的吞吐量规模。
- **轻量级分支与快速切换** — 分支是轻量级的可变引用,因此创建和切换分支的开销很小,且不会重复底层基础数据。
(返回顶部)
## Lore 的仓库
Lore 涵盖了一系列仓库:本仓库中的核心库、服务器和 CLI,以及每种支持语言的软件开发工具包 (SDK)。
| 仓库 | 描述 | 链接 |
| --- | --- | --- |
| **Lore 库、服务器和 CLI** | Lore 核心库、Lore 服务器和 Lore CLI。您当前位于此处。 | [在 GitHub 上查看](https://github.com/EpicGames/lore) |
| **JavaScript SDK** | Lore API 的 JavaScript 绑定。 | [在 GitHub 上查看](https://github.com/EpicGames/lore-js) |
| **Python SDK** | Lore API 的 Python 绑定。 | [在 GitHub 上查看](https://github.com/EpicGames/lore-python) |
| **C# SDK** | Lore API 的 C# 绑定。 | [在 GitHub 上查看](https://github.com/EpicGames/lore-dotnet) |
| **Go SDK** | Lore API 的 Go 绑定。 | [在 GitHub 上查看](https://github.com/EpicGames/lore-go) |
(返回顶部)
## 完全开源
我们相信,一个真正开放的生态系统是利用开放标准共同构建的。Lore 采用 [MIT 许可证](LICENSE)完全开源,我们邀请您在开放的环境中构建未来的版本控制系统。请参阅 [CONTRIBUTING.md](CONTRIBUTING.md) 参与其中。
(返回顶部)
## 许可证
Lore 采用 MIT 许可证发布。有关全文,请参阅 [LICENSE](LICENSE)。版权所有 (c) 2026 Epic Games, Inc.
(返回顶部)
## 联系与社区
- **Discord —** 在 [Discord](https://discord.gg/E4SFJKRPbg) 上与团队和社区聊天。
- **GitHub Issues —** 通过 [GitHub Issues](https://github.com/EpicGames/lore/issues) 报告 Bug 并申请功能。
(返回顶部) 标签:Rust, UML, 二进制发布, 分布式系统, 可视化界面, 响应大小分析, 大文件管理, 开源工具, 数据可视化, 日志审计, 游戏开发, 版本控制系统, 网络流量审计, 逆向工具, 通知系统