Wiki知识库 活跃维护

gollum

gollum/gollum

一个简单的、基于 Git 的维基,具有本地前端,并支持多种标记和内容类型。

14331
Stars 标星
1560
Forks 分支
242
Watchers 关注
91
Open Issues
Ruby
主要语言
MIT
开源协议
134.6 MB
仓库大小
10 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:gollum/gollum
git clone https://github.com/gollum/gollum.git
git clone git@github.com:gollum/gollum.git
README.md master

机器翻译正文由机器翻译自项目原始文档(英文),排版经程序统一处理,可能存在偏差,请以原项目仓库为准。

gollum - 基于 Git 的 Wiki

Gollum 是一个基于 Git 构建的简单 Wiki 系统。Gollum Wiki 只是一个具有特定性质的 git 仓库:

  • Gollum 仓库的内容是可由人编辑的文本或标记文件。
  • 页面可以按照你选择的任何方式组织到目录中。
  • 其他内容也可以包括在内,例如图片、PDF 以及页面的页眉/页脚。
  • 咕噜 页面:
    • 可以用各种标记语言编写。
    • 可以使用您喜欢的编辑器进行编辑(提交后更改将可见),也可以使用内置的网页界面进行编辑。
    • 可以在所有版本中显示,可恢复等。
  • Gollum 力求与 GitHub 和 GitLab 的 wikis 兼容。
    • 只需克隆你的 GitHub/GitLab wiki,然后在本地查看和编辑它!
  • Gollum 支持高级功能,如:

请参阅 wiki 获取详细文档,以及 Gollum 功能的 截图。


系统要求

Gollum 可以在类 Unix 系统和 Windows 上运行。

Gollum 可以使用“普通”Ruby (MRI) 或 JRuby(Java 虚拟机上的 Ruby)运行。在 Windows 上,Gollum 只能使用 JRuby 运行(无论是从源代码,还是 预编译)。

在 MRI 上,Gollum 使用 rugged git 库,而在 JRuby/Java 上则使用 rjgit 和 JGit 库。更多信息请参见 这里。

安装

作为一个 Ruby Gem

Ruby 最好通过 RVM 或选择的包管理器安装。然后只需:

gem install gollum

各个系统的安装示例可以在这里查看。

通过 Docker

有关如何通过 Docker 运行 Gollum 的说明,请参见这里。

作为 Web 应用程序资源(Java)

Gollum 的最新版本将始终包含一个可下载的 gollum.war 文件,可在任何具有可用 Java 安装的系统上直接执行:

java -jar gollum.war -S gollum <your-gollum-arguments-here>

在使用 .war 时,请务必将 绝对路径 传递给您的 Gollum 参数。

标记

Gollum 允许在不同的 wiki 页面上使用不同的标记语言。目前它支持以下标记:

您可以通过安装其他渲染器(任何由 github-markup 支持的渲染器)轻松启用对其他标记的支持:

  • AsciiDoc -- gem install asciidoctor
  • 克里奥尔语 -- gem install creole
  • MediaWiki -- gem install wikicloth
  • Org -- gem install org-ruby
  • Pod -- 需要 Perl >= 5.10(perl 命令必须在命令行中可用)
    • 较低版本应从 CPAN 安装 Pod::Simple。
  • ReStructuredText -- 需要 python >= 3
    • 请注意,Gollum 还需要你为 Python 安装 docutils
  • 纺织品 -- gem install RedCloth

Markdown 变体

默认情况下,Gollum 搭配 kramdown gem 来渲染 Markdown。然而,您可以使用任何 github-markup 支持的 Markdown 渲染器。这包括通过 commonmarker gem 对 CommonMark 的支持。列表中安装的第一个渲染器将被使用(例如,如果安装了 github/markdown,则 redcarpet 将不会被使用)。只需 gem install 您选择的渲染器。

有关如何使用自定义渲染 gem 并设置自定义选项的说明,请见此处。

运行 Gollum

命令行快速入门

  1. 运行:gollum /path/to/wiki,其中 /path/to/wiki 是已初始化的 Git 仓库。
  2. 在浏览器中打开 http://localhost:4567。

从源代码运行

  1. git clone https://github.com/gollum/gollum
  2. cd gollum
  3. bundle install(根据您的 Ruby 设置可能需要 sudo)
  4. bundle exec bin/gollum
  5. 在浏览器中打开 http://localhost:4567。

使用 Rack 运行

Gollum 还可以与任何 兼容 Rack 的 Web 服务器 一起运行。更多信息请见此处。

与身份验证服务器一起运行

Gollum 还可以与 CAS(中央身份验证服务)SSO(单点登录)服务器一起运行。经过一些调整,这可以为 Gollum 添加基本用户支持。要查看示例和说明,请访问此处。

作为服务运行

Gollum 也可以作为服务运行。更多信息请见此处。

环境

Gollum 主要使用环境变量 APP_ENV 来控制底层 Sinatra 应用的行为:

  • development – 在每次请求时重新加载应用
  • production – 仅加载应用一次

配置

Gollum 提供了如下列出的命令行选项。请注意,还有一些额外的“次要”选项可以调整 Gollum 的行为,这些选项没有命令行参数,但可以在 config.rb 中配置。

命令行选项

选项 参数 描述
--host [HOST] 指定要监听的主机名或 IP 地址。默认:'0.0.0.0'。(注意:0.0.0.0 允许远程访问。对于个人 Wiki,请使用 127.0.0.1。)
--port [PORT] 指定 Gollum 绑定的端口。默认值:4567。
--config [FILE] 指定 Gollum 的 配置文件 的路径。
--ref [REF] 指定要提供服务的 git 分支。默认:main(如果未找到 main,则为 master)。
--bare 告诉 Gollum 应将 git 仓库视为裸仓库。
--adapter [ADAPTER] 使用特定的 git 适配器启动 Gollum。默认值:rugged。(更多信息请参见 Git 适配器 )
--base-path [PATH] 指定所有 Gollum URL 的前导部分(路径信息)。将其设置为 /wiki 将使维基可以通过 http://localhost:4567/wiki/ 访问。默认值:/。
--page-file-dir [PATH] 指定所有页面的子目录。如果设置,Gollum 将只从此目录及其子目录提供页面。默认:仓库根目录。
--static、--no-static 使用静态资源。在开发/测试环境中默认为 false,在生产/预发布环境中默认为 true。
--assets [PATH] 设置查找静态资源的路径。
--css 告诉 Gollum 在每个页面中注入自定义 CSS。使用 wiki 根目录下的 custom.css(必须已提交)。
--js 告诉 Gollum 在每个页面中注入自定义 JS。使用 wiki 根目录下的 custom.js(必须已提交)。
--no-edit 禁用编辑页面的功能。
--allow-uploads [MODE] 启用文件上传。如果设置为 dir,Gollum 将把所有上传存储在存储库根目录的 /uploads/ 目录中。如果设置为 page,Gollum 将把每个上传存储在当前编辑的页面上。(文件可以通过拖放到编辑器的文本区域来上传。)
--math [RENDERER] 启用数学公式渲染。有效的渲染器:mathjax、katex。默认值:katex。为渲染器添加自定义配置到 math.config.js 并提交到仓库。
--critic-markup 启用使用 CriticMarkup 的注释支持。
--irb 以“控制台模式”启动 Gollum,并使用预定义 API。
--h1-title 告诉咕噜使用第一个 <h1> 作为页面标题。
--no-display-metadata 不在页面中显示元数据表。
--user-icons [MODE] 告诉 Gollum 在历史视图中使用特定的用户图标。可以设置为 gravatar、identicon 或 none。默认值:none。
--template-dir [PATH] 指定自定义 mustache 模板目录。仅覆盖存在于此目录中的模板。
--template-page 在根目录使用 _Template 作为新页面的模板。必须已提交。
--emoji 解析并解释表情符号标签(例如 :heart:),除非前导冒号被反斜杠转义(例如 \:heart:)。
--lenient-tag-lookup 内部链接以不区分大小写的方式解析,将空格视为连字符,并将匹配存储库中任何位置具有某个文件名的第一个页面。提供与 Gollum 4.x 的兼容性。
--help 显示命令行上的选项列表。
--version 显示 Gollum 的当前版本。
--versions 显示 Gollum 及辅助 gem 的当前版本。

配置文件

当使用 --config 选项时,Gollum 的某些内部部分可以被自定义。这在我们的维基中用于某些用户级别的更改,其中 自定义支持的标记 可能最为突出。

有关 config.rb 中可配置设置的文档,请参见 这里。

所有提到的更改和选项都适用于 Gollum 的配置文件(config.rb)和 Rack 的配置文件(config.ru)。

贡献

请考虑提供帮助!有关如何提交问题以及如何开始修改 gollum 的信息,请参阅 CONTRIBUTING.md。

本站来源与版权声明
  • 本文标题:gollum - 一个简单的
  • 本文链接:https://www.cn121.com/wiki/gollum-gollum.html
  • 原项目:gollum/gollum 版权归原作者 gollum 及贡献者所有
  • 收录信息:本站于 2026-10-10 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
  • 开源协议:收录时本项目采用 MIT(查看 LICENSE 原文),本站译文为其衍生内容;使用、修改、分发请以该仓库 LICENSE 原文为准。
  • 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 gollum/gollum。
  • 翻译说明:本页正文为人工智能生成内容——由机器翻译对原项目 README 初译、经程序校验排版,可能存在错漏,请以原项目文档为准。
  • 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
  • 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。