有个想法,想使用 git 提交记录来生成日志博客,该如何实现呢?

2019-06-27 14:21:34 +08:00
 andyhuai

想用 github 来实现一个简单的记录心情或者事件的博客, 每个 commit 就会在生成一个状态,包含时间和内如,就像 github 的 release 列表一样。 但是如何读取提交记录呢?没有找到 json 文件什么的, 有知道告知一下;

另外,有一个 nodejs 实现的类似的项目, https://byronhsu.github.io/life-commit/,大家可以看看

2550 次点击
所在节点    程序员
20 条回复
jasonsui
2019-06-27 14:54:16 +08:00
webhook
Ritter
2019-06-27 15:05:01 +08:00
插眼等大佬解答
npe
2019-06-27 15:15:30 +08:00
花里胡哨。。。
Sanko
2019-06-27 15:37:42 +08:00
commit 有长度限制吗
xaplux
2019-06-27 15:38:52 +08:00
感觉可以用 github 的 api 接口实现,developer.github.com/v3/repos/commits/
yuankui
2019-06-27 15:44:06 +08:00
http://qinghua.github.io/jgit/

如果是 java 语言的话,可以用这个库,可以直接读取.git 仓库。包含所有你需要的元数据信息。

如果是其他语言的话,可以在这里找找:
https://git-scm.com/book/uz/v2/Appendix-B%3A-Embedding-Git-in-your-Applications-Libgit2
yuankui
2019-06-27 15:45:21 +08:00
最后的最后,可以寄出大杀器:爬虫。
KuroNekoFan
2019-06-27 15:47:57 +08:00
git webhook
KuroNekoFan
2019-06-27 15:49:02 +08:00
跟 commit 自动触发 ci/cd 一个道理
Northxw
2019-06-27 15:49:30 +08:00
爬虫
moodasmood
2019-06-27 15:50:15 +08:00
花里胡哨+1
andyhuai
2019-06-27 15:58:37 +08:00
@xaplux 这个貌似比较靠谱的
@KuroNekoFan webhook,如何拿到我 commit 提交 message 呢?
KuroNekoFan
2019-06-27 16:08:28 +08:00
@andyhuai 方法应该不限于一种,就我知道的,git cmd tool,比如
```
git ls-remote --tags ${repoURI}
```
可以拿到这个 repoURI 对应的 tag 信息
pupboss
2019-06-27 16:53:41 +08:00
commit 之前仓库要有改动才行,虽然也很容易实现,我还是想跟风说一个。。。花里胡哨+2
deepdark
2019-06-27 17:10:15 +08:00
可以修改覆写.git 目录里的 hooks 文件夹里的内容,你的需求需要修改 post-commit,具体流程就是在你仓库 commit 的时候 bash 脚本拿到 commit msg 然后做你想要的操作,生成 markdown 发布博客或者是调用 web 接口都可以
jingyulong
2019-06-27 21:54:20 +08:00
官方接口可以做到啊。。。。。啥数据都有,https://developer.github.com/v4/guides/intro-to-graphql/
kawana
2019-06-27 23:37:00 +08:00
@pupboss 不一定需要有改动, `git commit --allow-empty` 可以提交空 commit,不过还是 「花里胡哨」
andyhuai
2019-06-28 09:08:42 +08:00
@kawana 就懒,不想写过多东西,不想买 vps,不想折腾
JiYouMCC
2019-06-28 16:41:00 +08:00
github api graphql
JiYouMCC
2019-06-28 16:42:07 +08:00
不一定要 comment,还可以起个 issue,然后用 issue 的帖子内容生成,这样就还能支持修改删除啥的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/577991

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX