通过命令行使用 ikiwiki:工作流程和权限问题

通过命令行使用 ikiwiki:工作流程和权限问题

我仅在本地笔记本电脑上使用 ikiwiki 作为个人笔记(html 页面位于~/public_html/mywiki),现在我尝试使用 emacs 编辑它并从命令行推送。

我对此有一些疑问:

  1. 以下工作流程是否正确:

cd ~/mywiki

编辑并~/mypage.mdwm保存emacs

git add ~/mypage.mdwm
git commit -m "mypage edit"
git push

由于我有时也想从网络界面对其进行编辑,因此我对其进行了测试,并注意到似乎不需要在编辑之前进行拉取。如果我从网络界面保存编辑,目录~/mywiki会神奇地更新,而无需使用git pull.

到目前为止这是正确的还是有更好的工作流程?

  1. 从网络界面编辑并保存页面后,它会以 root 权限保存,~/mywiki如何让 ikiwiki 以我的用户名作为组和所有者保存所有内容?

答案1

广告问题1:

这似乎是正确的。如果您设置git_wrappergit_wrapper: /home/user/mywiki/.git/hooks/post-commit(而不是git_wrapper: /home/user/mywiki.git/hooks/post-update 您不需要推送步骤。

您还可以考虑您的 wiki 的另一个工作克隆。但只要您有一个用户设置,并且您不同时通过 Web 界面和编辑器进行编辑,那么scrdir按照您所描述的方式在内部工作应该没问题。另请参阅这个问题:如果我想在本地提交,为什么 ikiwiki 需要 3 个 git 存储库

广告问题2:

我不太确定问题来自哪里,也许您在安装过程中确实运行ikiwikisudo。我建议采取以下措施来修复它:

  1. 确保它public_html归您所有 ( sudo chmod myuser:myuser ~/public_html)

  2. 通过克隆重置 wiki:

    • 克隆裸存储库:(git clone --bare ~/mywiki.git ~/newiki.git即使 中的文件由中的文件mywiki.git拥有)root~/newiki.gitmyuser
    • cp ~/mywiki.git/config ~/newiki.git/config
    • 制作新的srcdir:(git clone ~/newiki.git ~/newiki~/newiki是你的新的srcdir
  3. 制作新的配置文件:cp ~/mywiki.setup ~/newiki.setup并重命名所有出现mywikinewiki.

  4. 然后运行(无需 sudo):ikiwiki --setup newiki.setup --getctime

  5. 在浏览器中测试:127.0.0.1/~myuser/newiki

如果一切正常,您可以(备份后)删除mywiki并重命名newiki为(mywiki如果您愿意)。

相关内容