GitHub提供了一个“最新”的URL,重定向到最新版本的信息页面。例如:https//github.com/reactiveui/ReactiveUI/releases/latest将重定向到https://github.com/reactiveui/ReactiveUI/releases/tag/5.99.6

这很好,但我需要一个URL下载文件https://github.com/reactiveui/ReactiveUI/releases/download/5.99.6/ReactiveUI-5.99.6.zip

为什么?作为Travis CI脚本的一部分,我想让URL curl以下载最新版本。

我猜对了一些URL,比如/ releases / download / latest /file.zip(用“latest”代替版本部分)和/releases/download/file.zip,而不是404。

有没有办法做到这一点 - 在一个shell脚本和curl的上下文?

耽尼耽尼提问于
文刀人圭滇狐就是既疯癫又糊涂!回答于

应该使用git...

最初,我的.travis.yml是这样的:

before_install:
- curl -L https://raw.githubusercontent.com/greghendershott/travis-racket/master/install-racket.sh | bash

这将从repo自动获得任何最新版本。

但有人向我指出,GitHub不希望人们使用raw.github.com下载。相反,人们应该使用“释放”。所以我是个好人,每次都会手动发布。那么我的.travis.yml是这样的:

before_install:
- curl -L https://github.com/greghendershott/travis-racket/releases/download/v0.6/install-racket.sh | bash

但每次都要放一次。更糟糕的是,需要更新所有.travis.yml文件以指向该文件的更新版本。

只需使用git克隆回购,并使用其中的文件:

before_install:
- git clone https://github.com/greghendershott/travis-racket.git
- cat travis-racket/install-racket.sh | bash # pipe to bash not sh!

回答过的其他问题

人工智能在生活中的应用都有哪些?

文刀人圭滇狐就是既疯癫又糊涂!
具体而言,人工智能在生活中的应用大致为: 1.互联网的AI 例如,你在淘宝的每一次点击的动作,在朋友圈每一次点赞的动作,这些数据都被收集起来,成为巨头互联网公司能够更深度地了解用户的基础,为用户提供更好、更贴切的服务,同时变现。 2.虚拟个人助理 如果你经常使用手机,你一定对Si...... 展开详请

目前国内的语音识别技术达到了什么水准?还存在哪些问题?

文刀人圭滇狐就是既疯癫又糊涂!

中英文混合也可以识别了

带有一点点口音的普通话也没有什么问题

Canvas - IndexSizeError:索引或大小为负数或大于允许的数量,如何解决?

文刀人圭滇狐就是既疯癫又糊涂!
指定尺寸值时绘制的图像的宽度和高度应该大于或等于1。floor所有的值都会传递给它。 如果宽度和/或高度为0,则会导致: IndexSizeError: Index or size is negative or greater than the allowed amount ...... 展开详请

N和E在此select语句中表示什么

文刀人圭滇狐就是既疯癫又糊涂!
您正在寻找计算属性的关键和值的简写。“N”是Name的缩写。“L”或Label也用于代替Name。“E”当然是为了表达。 当您想要操作现有属性或作为添加属性的简单方法时,可以使用它们。这绝不是唯一的方法。 一个很好的例子: Get-ChildItem C:\Test | Sel...... 展开详请

TypeORM没有创建表,列等

文刀人圭滇狐就是既疯癫又糊涂!

Connection具有'synchronize()'方法。您可以使用它自动创建表和列:

const connection = await createConnection(...);
await connection.synchronize();

如何检测Windows窗体应用程序中的Windows 10何时进入平板模式?

文刀人圭滇狐就是既疯癫又糊涂!
根据这篇文章,你不能听取WM_SETTINGCHANGE消息。这是一个简短的c#示例: protected override void WndProc(ref Message m) { const int WM_WININICHANGE...... 展开详请

关于作者

文刀人圭

滇狐就是既疯癫又糊涂!

所属标签

扫码关注云+社区