[开源]mDown,一款github项目版本更新检查、下载工具。
## 前言> mDown应该是几年前写的,会经常关注github某个项目是否有新的版本发布,所以想写个工具定期检查,让自己更懒。
>
> 附件包含该工具源码,使用易语言编写,引用到的模块及源码都一并打包了。
>
> 支持检查 release commits,配置信息使用json编码,有较多字段可以灵活组合。
>
> 都是按照自己当时需求写的,所以不一定适合所有场景,有相同需求的可以试一试。
## 预览图
## 调用方式
```cmd
mDown.exe <path>
<path>配置文件路径,可以跟随多个.
-F 忽略发布时间,强制更新.
-M 生成示例配置,可以在此基础上修改.
-H 查看帮助.
```
1. 配置文件格式为json
2. 部分特性支持通配符 * ? 后续会相应介绍
## 配置文件
1.配置格式示例,主要配置放在data数组里面
```json
{
"root":"F:/xxxxxx",
"data":[{
"owner":"iawia002",
"repo":"lux",
"tag_name":"v0.17.1",
"down_info":[{
"name":"lux_*_Windows_64-bit.zip",
"downmode":0,
"unzip_key":["lux.exe"],
"unzip_mode":0,
"unzip_path":""
}],
"name":"v0.17.1",
"created_at":"2023-03-27T03:07:01Z",
"published_at":"2023-03-27T03:13:38Z",
"body":""
},{
"owner":"lua",
"repo":"lua",
"type":1,
"branch":"master",
"commits":"6baee9ef9d5657ab582c8a4b9f885ec58ed502d0",
"ext":"c;h",
"focuspath":"/",
"redirect":[{
"origpath":"/",
"targetpath":"/third_party/lua/src/"
}],
"lastcommits":"6baee9ef9d5657ab582c8a4b9f885ec58ed502d0"
}]
}
```
2.下面是字段介绍
| 字段名 | 是否必须 | 描述 |
| ------------ | -------- | ------------------------------------------------------------ |
| root | | 根目录 |
| data | √ | 要获取的项目配置信息 |
| owner | √ | 项目所有者 |
| repo | √ | 仓库名 |
| type | | 任务类型 0.Release 1.Commits |
| branch | | 分支信息 任务为1有效 |
| commits | | 从这次提交开始处理 |
| lastcommits| | 上次提交,由程序自动处理 |
| ext | | 只处理指定后缀的文件更改 |
| focuspath | | 关注路径 没在这路径的提交改动都步处理 |
| origpath | | 原始路径 |
| targetpath | | 本地目标路径 |
| redirect | | 重定向路径,项目地址路径重定向本地路径 |
| per | | 获取预览版 非0启用 |
| skip | | 跳过次数,-1永久跳过 |
| skipnum | | 已经跳过次数,由程序自己处理 |
| tag_name | | 标签,由程序自己处理 |
| name | | 由程序自己处理 |
| created_at | | 创建时间 |
| published_at | | 发布时间 |
| body | | 发布内容 |
| down_info | √ | 下载信息 |
| name | √ | 关注的文件名称,支持通配符 |
| downmode | | 下载模式 0.下载到内存 1.下载到指定路径 |
| unzip_key | | 指定要解压的文件,支持配置多个 |
| unzip_mode | | 解压模式 0解压到当前目录 1解压到指定目录 2按照压缩包路径解压 |
| unzip_path | | 解压路径 |
| delpath | | 删除替换压缩包路径,dex-tools*:dex-tools:1 【源:替换:索引】多个用;分割 |
| openmode | | 为写出文件的时候才启用,打开方式 0.同步打开 1.异步打开 |
| cmd | | 传递参数,如果文件是可执行文件 |
| startcmd | | 打开前执行命令 |
| endcmd | | 打开后执行命令 |
3.每次执行都会和本地配置比对 有不同就定义为更新
附件: 从来都没用过 感谢分享 用不用都得支持一下 对经常下载github仓库的朋友还是非常有帮助的{:1_921:} 虽然看不懂,但还是很牛逼的样子 来个GUI就更好了 嗯嗯,每次下载git都是慢的要死。更新都难。 可以检查任何github项目? 支持原创!顶起来