Skip to content

Guide · Open source

How to use Gollum: install, run and edit a Git wiki

Updated · written with AI from the project's own documentation and checked against our catalogue data

Gollum is an open-source wiki built on Git, where every page is a text or markup file in a Git repository. This guide is for people who want to install it, start it on a local wiki folder, and edit pages either in their own editor or in the browser. By the end you will know the install options, how to run Gollum, and what it is and is not suited for.

Gollumgollum/gollum · ★ 14.3k · MIT

Quick start

  1. 1Install Ruby. Install Ruby (MRI) or JRuby using RVM or your system package manager.
  2. 2Install the gem. Run gem install gollum to install Gollum as a Ruby gem.
  3. 3Create or pick a Git repository. Gollum serves an initialized Git repository, so choose or create one for your wiki pages.
  4. 4Start Gollum. Run gollum with the path to your repository.
  5. 5Open the wiki in a browser. Visit http://localhost:4567 to see your wiki.
  6. 6Edit and commit. Edit pages in your editor and commit changes, or use the built-in web interface.

What Gollum is and what it requires

A Gollum wiki is simply a Git repository whose contents are human-editable text or markup files. Pages can be organized into directories however you like, and other content such as images and PDFs can live alongside them.

Gollum runs on Unix-like systems and on Windows. It runs on normal Ruby (MRI) or on JRuby. On Windows, it runs only with JRuby.

  • Ruby (MRI) or JRuby
  • A Git repository for the wiki content
  • Java, only if you use the gollum.war file

Install Gollum as a Ruby gem

Ruby is best installed through RVM or a package manager of your choice. Once Ruby is set up, install Gollum with the gem command. The README points to the project wiki for installation examples on individual systems.

gem install gollum

Start Gollum on a wiki repository

Gollum needs an initialized Git repository to serve. Run gollum with the path to that repository, then open the local address in your browser. The default address in the README is localhost port 4567.

If you prefer to work from source, clone the repository, install dependencies with bundle, and run the bin script.

  • Run gollum /path/to/wiki, where the path is an initialized Git repository
  • Open http://localhost:4567 in your browser
gollum /path/to/wiki

Edit pages in your editor or the web interface

You can edit pages with your favourite editor. Changes become visible after you commit them. Alternatively, use the built-in web interface. Either way, every version of a page can be displayed, and pages can be reverted, using Git.

Gollum aims to be compatible with GitHub and GitLab wikis. The README suggests you can clone a GitHub or GitLab wiki and view and edit it locally.

  • Edit a file in your editor, then commit it to see the change
  • Use the built-in web interface for in-browser editing
  • Browse past versions and revert pages with Git

Choose a markup language

Gollum lets different pages use different markup languages. It ships with support for Markdown, which uses the kramdown gem by default, and RDoc. Other markups such as AsciiDoc, Creole, MediaWiki, Org, Pod, ReStructuredText and Textile can be enabled by installing the matching renderer gem or tool.

If you want CommonMark, the README mentions the commonmarker gem. Only the first installed Markdown renderer from its list is used.

  • Markdown (kramdown by default)
  • RDoc
  • Optional: AsciiDoc, Creole, MediaWiki, Org, Pod, ReStructuredText, Textile
gem install asciidoctor

Other ways to run Gollum

Gollum can run through Docker, following instructions in the project wiki. It can also run under any rack-compatible web server, or as a service. For Java environments, the release page provides a gollum.war file that runs with a Java installation. When using the .war, pass absolute paths to your Gollum arguments.

For user logins, the README only mentions running Gollum alongside a CAS (Central Authentication Service) single sign-on server, which it describes as adding basic user support after some tweaking.

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

What people use it for

  • A development team keeping project docs in the same Git repo as its code
  • Viewing and editing a GitHub or GitLab wiki locally after cloning it
  • Writing documentation in a text editor and committing it
  • Browsing or reverting page history with standard Git tools

Frequently asked questions

Is Gollum free to use?

Gollum is released under the MIT licence, as stated in the project information. You can check the LICENSE file in the repository for the full terms.

What do I need to install Gollum?

You need Ruby (MRI) or JRuby, and a Git repository for your wiki content. Java is only needed if you use the gollum.war file.

How do I install Gollum?

The README gives gem install gollum as the way to install it as a Ruby gem. You can also clone the source from GitHub or use Docker, following the project wiki.

Does Gollum have user accounts and permissions?

The README does not describe built-in user accounts or permissions. It only mentions running Gollum alongside a CAS single sign-on server to add basic user support.

Can Gollum work with GitHub or GitLab wikis?

Gollum aims to be compatible with GitHub and GitLab wikis. The README says you can clone your GitHub or GitLab wiki and view and edit it locally.

How does Gollum compare to Wiki.js or MkDocs?

This guide does not compare features in detail. Gollum stores pages as files in Git and runs locally, while Wiki.js, DokuWiki, Gitea Wiki and MkDocs are other options to review against your own needs.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Gollum suits developers and teams who want wiki pages stored in Git, edited in a text editor and tracked with familiar Git tools. It is a poor fit for people who want a hosted wiki with no setup, or who need built-in user accounts and permissions, since the README only describes CAS-based login as an add-on.

Install options & downloads