Gollum wiki用于多个项目

时间:2013-01-30 10:51:38

标签: wiki web-farm gollum-wiki

我喜欢wiki的Gollum,但似乎总是一个项目/主题特定。

是否有一些项目或开箱即用的解决方案来维护Gollum项目实例?

通过维护我的意思是创建它,列出它们,...

4 个答案:

答案 0 :(得分:1)

我刚创建了两个不同的wiki:

gollum --page-file-dir wiki1 my_repos

(Control-c停止运行gollum)

gollum --page-file-dir wiki2 my_repos

我创建了一个home.mediawiki文件作为每个文件的主页。所以他们占据了两个不同的命名空间。

要同时编辑这些,我想我会学习使用另一个端口作为第二个gollum实例,或者只是通过我的文本编辑器将注释提交到一个目录或另一个目录(wiki1或wiki2),可能就是我要做的事情。

由于wiki1和wiki2是具有GUI界面的计算机上的目录,因此我只使用Finder / Windows资源管理器/其他任何内容来维护它们。

这是否符合您的需求?

答案 1 :(得分:0)

嗯,有big-gollum,但它看起来并不特别活跃。

答案 2 :(得分:0)

所以我决定通过桌面快捷方式来做到这一点。可执行命令如下:

    using (var client = new HttpClient())
    {
        var uri = new Uri("https://api.telegram.org/bot247655935:AAEhpYCeoXA5y7V8Z3WrVcNJ3AaChORjfvw/sendAudio");

        using (var multipartFormDataContent = new MultipartFormDataContent(
            "SendAudio----" + DateTime.Now.ToString(CultureInfo.InvariantCulture)))
        {
            multipartFormDataContent.Add(
                new StringContent("@mp3lyric_test"), 
                string.Format("\"{0}\"", "chat_id")
            );

            multipartFormDataContent.Add(
                new StreamContent(new MemoryStream(fileBytes)), 
                '"' + "audio" + '"'
            );

            using (var message = await client.PostAsync(uri, multipartFormDataContent))
            {
                var contentString = await message.Content.ReadAsStringAsync();
            }
        }
    }

这伪随机化端口以绑定gollum,然后应用该端口来访问wiki。一旦铬关闭,等待状态就会跳转到使用pgrep杀死gollum进程来获取其pid。因此,通过桌面打开的每个wiki的每个gollum实例都是不同的,gollum可以与其他gollum一起生活,而不是那么闷闷不乐。

答案 3 :(得分:0)

GitHub过去曾使用Gollum来托管与每个存储库关联的Wiki(可选)。因此,他们必须针对此问题找到解决方案。看来他们的代号是 Smeagol 。他们的解决方案尚未公开。

但是,有一些具有相同目标的开源项目-也称为Smeagol。 根据我自己的搜索,值得注意的是(截至2020年中):

  1. https://github.com/cloudogu/smeagol (Java,保留所有权利)
  2. https://github.com/schnatterer/smeagol-galore (Java,MIT,基于cloudogu的实现)
  3. https://github.com/journeyman-cc/smeagol (Clojure,GPLv2)

我尚未测试它们,但是第二个选项( smeagol-galore ) 听起来是一个很好的解决方案。