Gitment - 一款基于Github的Issues实现的评论插件

时间: 2018-01-09阅读: 410标签: git

最近发现了一个有意思的评论插件Gitment, 从实现和效果上都不错,给大家介绍一下。如果你有个人博客,可以考虑使用;如果你没有个人博客,也可以了解下实现的思路,开开脑洞。

之前普遍使用的多说评论关闭了,相信很多人的博客都受到了影响。我个人的博客评论也因此换过Discuz, 网易评论插件,畅言评论插件,都不甚理想。这次看到Gitment还是有些惊喜。

实现的最终效果如图:


基本原理是利用Github项目上的Issues功能来实现内容的存储,使用github的账号登录体系。和自己的博客集成起来也比较简单,一个css文件,一个js文件,一段初始化代码就可以了。


1、首先Github上,注册 OAuth Application

可以通过这个地址来注册一个应用,按提示填写即可。


成功之后会得到一个client ID 和一个 client secret,在后面的初始化插件时会用到。



2、页面集成Gitment

加载对应的css文件、js文件、初始化代码到要显示的页面

<div id="container"></div>
<link rel="stylesheet" href="https://imsun.github.io/gitment/style/default.css">
<script src="https://imsun.github.io/gitment/dist/gitment.browser.js"></script>
<script>
    var gitment = new Gitment({
        id: '页面 ID', // 可选。默认为 location.href
        owner: '你的 GitHub ID',
        repo: '存储评论的 repo',
        oauth: {
            client_id: '你的 client ID',
            client_secret: '你的 client secret',
        },
     })
    gitment.render('container’); //container为你要显示评论的id
</script>

关于初始化部分的参数更多说明,可参看

https://github.com/imsun/gitment#options


2.2 可能遇到的问题一


如果你遇到这样的报错,说明你的gitment.render('container’); //container为你要显示评论的id 里的id在页面上没有对应上,请仔细检查。


2.3 可能遇到的问题二


如果遇到这样的问题,很可能是你初始化的repo地址没有写对,repo一定要写成对应的id,而不是http的地址,图中的id是我自己Github上的一个项目,也就是要存储评论内容的项目,如图:



3、初始化评论

集成成功后你就可以看见显示的评论插件内容了。这时候还需要一步就是登陆自己的gihub账号,点击图中的Initilize Comments


注意:每一篇文章都需要初始化

最后你可以在Isuues部分看到的评论存储为:



4、自定义和个性化

你也可以自定义样式和布局,更多说明请参考:https://github.com/imsun/gitment#customize

最后总结一下,这款Gitment的优点是集成简单,自定义比较方便,自带github账号登录;缺点就是仅支持github账号登录,每次发布的新文章要点击按钮来初始化,略麻烦;目前手机端适配还并不理想。如果你对评论插件的要求不是那么严格,可以考虑使用这款插件。

文章来源:http://liujinkai.com/2017/10/24/gitment-pinglun-chajian/
github项目源码:https://github.com/imsun/gitment

GitHub 多账户设置

由于不同的 GitHub 不能使用同一个 SSH 公钥,所以要生成两个不同的 SSH 分别对应两个主账户和副账户。编辑 ~/.ssh/config SSH 配置文件,没有该文件则新建。然后,以后使用 main 账户添加远程仓库需要这样添加,部署相应的 SSH 公钥到 GitHub 后,尝试在相应的本地仓库 git push 几个文件测试。

git冲突_解决git代码提交冲突问题

提交代码出现冲突如何解决?包括:树冲突(文件名修改造成的冲突,称为树冲突)、内容冲突(git pull拉取最新代码发现)、直接编辑冲突文件、利用图形界面工具解决冲突

git从远程仓库克隆dev分支到本地的实现

这篇文章主要介绍git从远程仓库拉取dev分支到本地的实现【gitLab】:初始化一个本地仓库、与远程仓库建立连接 、查看本地是否具有dev分支、在本地创建分支dev并切换到该分支 、dev分支上的内容都拉取到本地

GIT分支管理:创建与合并分支、解决合并冲突

分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。

Git忽略规则文件.gitignore_关于.gitignore配置

.gitignore 文件的作用就是告诉git, push的时候忽略指定的文件夹或者文件,例如:vue-cli脚手架创建的项目,push到github上时,不会上传node依赖文件夹,这是因为vue-cli脚手架创建的时候,自动为我们创建了 .gitignroe文件,并且为我们写好了规则。

通过git命令,上传本地文件到git服务器

把本地代码上传到git的方法:步骤一:首先进入需要上传的项目文件夹,通过命令git init初始化,步骤二:将本地文件添加到版本库中,使用命令 git add . 将文件提交到本地的暂存区,步骤三:使用命令git commit将文件提交到本地仓库...

git入门操作,git命令的基本使用

Git是一个免费的、开放源码的分布式版本控制系统,它能以快速和效率处理从各种各样的项目。(一句话概括,就是分布式版本控制工具)

远程协作尝试,Github远程协作

远程协作是一个听起来很酷的词,就像谈恋爱一样,听起来总是觉得它和浪漫一词相关。远程协作好处可以想象:节省办公室租金,工作环境自由/高效/免打扰,节省路途时间,更有可能招到更好的人才....