V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
ffffb
V2EX  ›  问与答

github 上的 release 信息都是手写的吗?

  •  
  •   ffffb · 2019-10-09 10:55:41 +08:00 · 3104 次点击
    这是一个创建于 1633 天前的主题,其中的信息可能已经有所发展或是发生改变。

    看到很多仓库的 release 信息都挺清晰的,例如: https://github.com/ElemeFE/element/releases https://github.com/microsoft/TypeScript/releases

    我所知道的是 github 会根据 tag 自动生成一个 release,但是生成出来的是没有这些信息的。这些难道都是手动新建的?还是有什么脚本可以参考?

    7 条回复    2019-10-10 11:59:13 +08:00
    EricXuu
        1
    EricXuu  
       2019-10-09 11:06:15 +08:00   ❤️ 2
    可以直接从 commit message 生成 Change log
    参考 http://www.ruanyifeng.com/blog/2016/01/commit_message_change_log.html
    ffffb
        2
    ffffb  
    OP
       2019-10-09 11:12:02 +08:00
    @EricXuu 我的也是用这个方法生成 changelog,但是跟 release 信息还是不一样。我的意思是,他们是不是手动去编辑 release 信息,大概的操作就是去到 release 那个页面,然后找到对应的 tag,点击编辑,把对应 changelog 复制进去,然后保存。
    imherer
        3
    imherer  
       2019-10-09 11:22:39 +08:00
    可能会单独编写吧,毕竟大项目,那么多人都在用。 (我猜的)
    rodjl
        4
    rodjl  
       2019-10-09 12:25:18 +08:00 via iPhone   ❤️ 1
    我一般都是用 semantic release 配合 CI 生成的
    thonatos
        5
    thonatos  
       2019-10-09 15:18:52 +08:00   ❤️ 1
    我在用 github actions + semantic release,传送门: https://zhuanlan.zhihu.com/p/78293527
    ffffb
        6
    ffffb  
    OP
       2019-10-09 18:00:06 +08:00
    感谢两位,@rodjl @thonatos。我也找到一个叫 release-it 的东西,看了下 semantic release,两个差不多。现在问题来了,我原来就有一个 release 用的脚本,现在在看如何跟 release-it 等配合,只用 release-it 等来填 github 的 release 信息。
    ffffb
        7
    ffffb  
    OP
       2019-10-10 11:59:13 +08:00
    记录一下最后的办法吧。
    由于我本身就有一个 release 脚本,所以就不直接用 semantic release 或者 release it 了。最后是参考了 release-it,使用了 github 的 @octokit/rest 库,直接请求 github 的 createRelease api 来创建。按照 api 的要求传入指定的信息即可。
    另外就是要得到 changelog 信息了,我用的是 conventional-changelog,在不传入目标文件的时候,生成的 changelog 信息就会输出到标准输出中,得到之后转成字符串用于后续的 createRelease api 参数。
    all set。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2655 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 15:23 · PVG 23:23 · LAX 08:23 · JFK 11:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.