Skip to content

Commit bf7e782

Browse files
committed
Update Component Introduction.md
1 parent cb32207 commit bf7e782

File tree

1 file changed

+96
-101
lines changed

1 file changed

+96
-101
lines changed

website/i18n/en/docusaurus-plugin-content-docs/current/docs/doc/Component Introduction.md

Lines changed: 96 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,18 @@ sidebar_position: 2
66

77
![](imgs\GeneralUpdate_h2.png)
88

9-
### 1.GeneralUpdate是什么?
9+
### 1. What is GeneralUpdate?
1010

11-
GeneralUpdate是一款基于.NET Standard2.0开源多平台自动升级组件。一个小小star是您对我最大的支持,让我们保持更新维护的动力。ENENENENENENEN
11+
GeneralUpdate is an open-source, cross-platform automatic update component based on .NET Standard 2.0. A small star is your greatest support, motivating us to keep updating and maintaining. ENENENENENENEN
1212

13-
##### 本项目开源仓库地址
13+
##### Project Open Source Repository Address
1414

1515
- https://github.com/GeneralLibrary/GeneralUpdate
1616
- https://gitee.com/GeneralLibrary/GeneralUpdate
1717

18-
##### 相关开源项目仓库地址
18+
##### Related Open Source Project Repository Addresses
1919

20-
当前项目GeneralUpdate
20+
Current Project GeneralUpdate
2121

2222
- https://github.com/GeneralLibrary/GeneralUpdate
2323
- https://gitee.com/GeneralLibrary/GeneralUpdate
@@ -26,158 +26,153 @@ MAUI GeneralUpdate.Maui
2626

2727
- https://github.com/GeneralLibrary/GeneralUpdate.Maui
2828

29-
打包工具项目地址GeneralUpdate.Tools
29+
Packaging Tool Project Address GeneralUpdate.Tools
3030

3131
- https://github.com/GeneralLibrary/GeneralUpdate.Tools
3232
- https://gitee.com/GeneralLibrary/GeneralUpdate.Tools
3333

34-
示例项目地址GeneralUpdate-Samples
34+
Sample Project Address GeneralUpdate-Samples
3535

3636
- https://github.com/GeneralLibrary/GeneralUpdate-Samples
37-
3837
- https://gitee.com/GeneralLibrary/GeneralUpdate-Samples
3938

40-
##### 帮助文档 #####
39+
##### Help Documentation #####
4140

42-
- 讲解视频: https://www.bilibili.com/video/BV1aX4y137dd
43-
- 官方网站: https://www.justerzhu.cn/
44-
- 快速启动: https://mp.weixin.qq.com/s/pRKPFe3eC0NSqv9ixXEiTg
45-
- 使用教程视频:https://www.bilibili.com/video/BV1FT4y1Y7hV
46-
- 帮助文档&官方网站源码仓库:https://github.com/GeneralLibrary/GeneralUpdate-Samples/tree/main/website/doc
41+
- Video Tutorial: https://www.bilibili.com/video/BV1aX4y137dd
42+
- Official Website: https://www.justerzhu.cn/
43+
- Quick Start: https://mp.weixin.qq.com/s/pRKPFe3eC0NSqv9ixXEiTg
44+
- Usage Tutorial Video: https://www.bilibili.com/video/BV1FT4y1Y7hV
45+
- Help Documentation & Official Website Source Repository: https://github.com/GeneralLibrary/GeneralUpdate-Samples/tree/main/website/doc
4746

48-
##### 沟通交流
47+
##### Communication and Exchange
4948

50-
本开源项目目前遵循MIT开源协议开源,可免费用于商用。在免费沟通渠道会不定期回答各位开发者的 问题。所有的社区捐赠将用于开源项目的发展建设。代码贡献者将会用捐赠资金进行奖励。
49+
This open-source project currently follows the MIT open-source license and can be used for commercial purposes for free. Free communication channels will periodically address developers' questions. All community donations will be used for the development and construction of open-source projects. Code contributors will be rewarded with donation funds.
5150

52-
- 免费问题解答: https://github.com/GeneralLibrary/GeneralUpdate/issues
53-
- 免费技术交流: .NET技术交流群 341349660
54-
- 开源项目使用讨论:GeneralUpdate交流群 748744489
55-
- 关于开源项目一对一问答需付费咨询。
51+
- Free Q&A: https://github.com/GeneralLibrary/GeneralUpdate/issues
52+
- Free Technical Exchange: .NET Technology Exchange Group 341349660
53+
- Open Source Project Usage Discussion: GeneralUpdate Exchange Group 748744489
54+
- One-on-one Q&A for open-source projects requires paid consultation.
5655

5756

5857

59-
### 商务合作
58+
### Business Cooperation
6059

61-
定制化二次开发,技术咨询,开源项目打赏以下是企业咨询、报价、商务合作联系方式(加好友请注明来意拒绝闲聊,推荐加微信)。
60+
Customized secondary development, technical consultation, open-source project rewards. Below are the contact details for enterprise inquiries, quotations, and business cooperation (please indicate your purpose when adding as a friend, casual chat is declined, adding on WeChat is recommended).
6261

6362
![](imgs\contact.png)
6463

6564

6665

6766

6867

69-
### 2.统一语言(Unifying Language)
70-
71-
在开始使用GeneralUpdate之前我们需要先知道体系中的一些基础概念。
72-
73-
![](imgs/client_server_upgrade.jpg)
74-
75-
- Client:是指你的主应用程序,是被更新的客户端。也可理解为是公司的产品。
76-
- Upgrade:是指升级程序,它将是一个独立的进程。需要和Client放在同一级目录下,在使用(或编码) 的过程中不可以和任何业务或设计关联、必须保持独立引用。
77-
- Server:是指服务端应用(ASP.NET)将提供版本更新信息交互、版本验证功能。
78-
- GeneralUpdate.Tool:是本开源项目提供的打包工具,用于生成更新包(7z和zip)。
79-
- UpdatePacket:顾名思义就是更新包,更新包里的内容都是新旧版本中具有文件内容差异补丁 (.pacth)或新增文件。
80-
- SQL : 目前sql脚本是基于Mysql数据库生成
68+
### 2. Unifying Language
8169

70+
Before using GeneralUpdate, we need to understand some basic concepts in the system.
8271

72+
![](imgs/client_server_upgrade.jpg)
8373

84-
#### 版本号执行标准
74+
- Client: Refers to your main application, which is the client to be updated. It can also be understood as the company's product.
75+
- Upgrade: Refers to the upgrade program, which will be an independent process. It needs to be placed in the same directory as the Client and should not be associated with any business or design during use (or coding), maintaining independent reference.
76+
- Server: Refers to the server application (ASP.NET) that will provide version update information interaction and version verification functions.
77+
- GeneralUpdate.Tool: Is the packaging tool provided by this open-source project, used to generate update packages (7z and zip).
78+
- UpdatePacket: As the name suggests, it is an update package. The contents of the update package are patch files (.patch) or new files with content differences between the new and old versions.
79+
- SQL: Currently, SQL scripts are generated based on the MySQL database.
8580

86-
- Nuget版本管理参考标准:https://docs.microsoft.com/zh-cn/nuget/concepts/package-versioning
87-
- 应用程序集版本管理参考标准:https://docs.microsoft.com/zh-cn/dotnet/standard/assembly/versioning (被组件更新的客户端程序,说通俗点就是你公司的产品;组件的操作将按照这个标准执行。)
88-
- 每次迭代除了更新AssemblyInfo中的版本号,还需要修改DLL文件的版本号。
8981

9082

83+
#### Version Number Execution Standards
9184

92-
### 3.GeneralUpdate提供什么?
85+
- Nuget Version Management Reference Standard: https://docs.microsoft.com/zh-cn/nuget/concepts/package-versioning
86+
- Application Assembly Version Management Reference Standard: https://docs.microsoft.com/zh-cn/dotnet/standard/assembly/versioning (The client program updated by the component, in simple terms, is your company's product; the component's operation will be executed according to this standard.)
87+
- In each iteration, besides updating the version number in AssemblyInfo, the version number of the DLL file also needs to be modified.
9388

94-
##### 组件功能
9589

96-
| 功能 | 是否支持 | 备注 |
97-
| -------------- | -------- | ------------------------------------------------------------ |
98-
| 断点续传 | 支持 | 单次更新失败时,下次一次启动时继续上一次更新下载更新包内容。(引用组件默认生效) |
99-
| 逐版本更新 | 支持 | 客户端当前版本如果与服务器相差多个版本,则根据多个版本的发布日期逐个更新。(引用组件默认生效) |
100-
| 二进制差分更新 | 支持 | 对比新老版本通过差分算法生成补丁文件。(引用组件默认生效) |
101-
| 增量更新功能 | 支持 | 相比上一个版本只更新当前修改过的文件,并且删除当前版本不存在的文件。(引用组件默认生效) |
102-
| 强制更新 | 支持 | 打开客户端之后直接强制更新。 |
103-
| 多分支更新 | 支持 | 当一个产品有多个分支时,需要根据不同的分支更新对应的内容。 |
104-
| 最新版本推送 | 支持 | 基于Signal R实现,推送当前最新版本。 |
105-
| 多语言 | 待验证 | 也可将本组件编写为控制台程序,作为更新“脚本”。更新其他语言的应用程序。 |
106-
| 跳过更新 | 支持 | 支持注入弹窗让用户决定是否更新本次发布,服务端决定强制时更新不生效。 |
107-
| 相互升级 | 支持 | 主程序可更新升级程序,升级程序可更新主程序。 |
108-
| 黑名单 | 支持 | 在更新过程中会跳过黑名单中的文件列表和文件扩展名列表。 |
109-
| OSS | 支持 | 极简化更新,是一套独立的更新机制。只需要在文件服务器中放置version.json的版本配置文件。组件会根据配置文件中的版本信息进行更新下载。 |
110-
| 回滚、备份 | 支持 | 更新之前会将客户端本地文件备份,如果客户端启动失败或崩溃则回滚覆盖。 |
111-
| 驱动更新 | 待验证 | 更新之前会将驱动备份到本地,如果客户端启动失败或崩溃则回滚覆盖。 |
112-
| 自定义方法列表 | 支持 | 注入一个自定义方法集合,该集合会在更新启动前执行。执行自定义方法列表如果出现任何异常,将通过异常订阅通知。(推荐在更新之前检查当前软件环境) |
113-
| AOT | 支持 | 支持AOT编译发布。 |
11490

91+
### 3. What does GeneralUpdate provide?
11592

93+
##### Component Functions
11694

117-
##### 打包工具
95+
| Function | Supported | Remarks |
96+
| -------------------------- | -------------- | ------------------------------------------------------------ |
97+
| Resume Download | Yes | When a single update fails, continue with the previous update download content on the next startup. (Enabled by default when referencing the component) |
98+
| Incremental Update | Yes | Update only the currently modified files compared to the previous version, and delete the files that do not exist in the current version. (Enabled by default when referencing the component) |
99+
| Binary Differential Update | Yes | Generate patch files by comparing new and old versions using differential algorithms. (Enabled by default when referencing the component) |
100+
| Incremental Update | Yes | Update only the currently modified files compared to the previous version, and delete the files that do not exist in the current version. (Enabled by default when referencing the component) |
101+
| Forced Update | Yes | Directly force an update after opening the client. |
102+
| Multi-branch Update | Yes | When a product has multiple branches, update the corresponding content based on different branches. |
103+
| Latest Version Push | Yes | Implemented based on Signal R, push the current latest version. |
104+
| Multi-language | To be verified | The component can also be written as a console program, serving as an update "script" for applications in other languages. |
105+
| Skip Update | Yes | Support injecting pop-ups to let users decide whether to update this release, with the server deciding that forced updates are not effective. |
106+
| Mutual Upgrade | Yes | The main program can update the upgrade program, and the upgrade program can update the main program. |
107+
| Blacklist | Yes | During updates, files and file extensions in the blacklist will be skipped. |
108+
| OSS | Yes | Simplified update, an independent update mechanism. Just place the version configuration file version.json on the file server. The component will update and download based on the version information in the configuration file. |
109+
| Rollback, Backup | Yes | Before updating, local files on the client will be backed up. If the client fails to start or crashes, it will roll back and overwrite. |
110+
| Driver Update | To be verified | Before updating, drivers will be backed up locally. If the client fails to start or crashes, it will roll back and overwrite. |
111+
| Custom Method List | Yes | Inject a custom method collection that will be executed before the update starts. If any exceptions occur during the execution of the custom method list, they will be notified through exception subscription. (Recommended to check the current software environment before updating) |
112+
| AOT | Yes | Support AOT compilation and release. |
118113

119-
GeneralUpdate.PacketTool使用.NET 8编写的桌面端打包程序。https://github.com/GeneralLibrary/GeneralUpdate.Tools
120114

121-
| 功能 | 支持 | 备注 |
122-
| ------------------ | ------ | ------------------------------------------------------------ |
123-
| 差分更新包生成 || 根据上一个版本和当前版本进行对比找出需要更新的文件或新添加文件。 |
124-
| 自动上传更新包 | 开发中 | 将生成好的差分更新包自动上传至服务器。 |
125-
| 可编辑选择差分文件 | 开发中 | 可视化查看差分包的打包内容,并可选择打包文件。 |
126115

116+
##### Packaging Tool
127117

118+
GeneralUpdate.PacketTool is a desktop packaging program written in .NET 8. https://github.com/GeneralLibrary/GeneralUpdate.Tools
128119

129-
### 5.GeneralUpdate支持什么?
120+
| Function | Supported | Remarks |
121+
| ---------------------------------------- | -------------- | ------------------------------------------------------------ |
122+
| Differential Update Package Generation | Yes | Compare the previous version and the current version to find the files that need to be updated or newly added files. |
123+
| Automatic Upload of Update Packages | In development | Automatically upload the generated differential update packages to the server. |
124+
| Editable Selection of Differential Files | In development | Visualize the packaging content of the differential package and select packaging files. |
130125

131-
##### .NET框架
132126

133-
| 框架名称 | 是否支持 |
134-
| -------------------------- | -------- |
135-
| .NET Core 2.0 | 支持 |
136-
| .NET 5 ... to last version | 支持 |
137-
| .NET Framework 4.6.1 | 支持 |
138127

139-
##### UI框架
128+
### 5. What does GeneralUpdate support?
140129

141-
| UI框架名称 | 是否支持 |
142-
| ---------- | --------------------- |
143-
| WPF | 支持 |
144-
| UWP | 商店模式下不可更新 |
145-
| MAUI | 目前仅支持Android平台 |
146-
| Avalonia | 支持 |
147-
| WinUI | 支持 |
148-
| Console | 支持 |
149-
| WinForms | 支持 |
130+
##### .NET Framework
150131

151-
##### 操作系统
132+
| Framework Name | Supported |
133+
| -------------------------------- | --------- |
134+
| .NET Core 2.0 | Yes |
135+
| .NET 5 ... to the latest version | Yes |
136+
| .NET Framework 4.6.1 | Yes |
152137

153-
| 操作系统名称 | 是否支持 |
154-
| ------------------ | -------- |
155-
| Windows | 支持 |
156-
| Linux | 支持 |
157-
| Android | 支持 |
158-
| 麒麟V10(飞腾S2500) | 支持 |
159-
| 麒麟V10(x64) | 支持 |
160-
| Ubuntu | 支持 |
161-
| 龙芯(Loongnix) | 待验证 |
138+
##### UI Framework
162139

140+
| UI Framework Name | Supported |
141+
| ----------------- | ---------------------------------------- |
142+
| WPF | Yes |
143+
| UWP | Cannot update in store mode |
144+
| MAUI | Currently only supports Android platform |
145+
| Avalonia | Yes |
146+
| WinUI | Yes |
147+
| Console | Yes |
148+
| WinForms | Yes |
163149

150+
##### Operating System
164151

165-
### 赞助一下
152+
| Operating System Name | Supported |
153+
| ------------------------- | -------------- |
154+
| Windows | Yes |
155+
| Linux | Yes |
156+
| Android | Yes |
157+
| Kirin V10 (Phytium S2500) | Yes |
158+
| Kirin V10 (x64) | Yes |
159+
| Ubuntu | Yes |
160+
| Loongson (Loongnix) | To be verified |
166161

167-
尊敬的赞助者:
168162

169-
该项目以作者为主力设计、维护的自动升级组件。这个项目的目标是为全球的开发者和技术爱好者提供一个共享、学习和创新的平台,我们致力于推动技术的发展和共享知识的力量。
170163

171-
但是,我们需要您的支持。您的赞助将使我们能够进一步提高项目的质量,增加更多的功能,提供更好的用户体验。而且,作为回报,我们会在项目网站上展示您的公司标志,以表达我们对您的感激之情。
164+
### Support Us
172165

173-
这是一个绝佳的机会,不仅可以推动技术的进步,也可以提高您的品牌知名度和社区影响力。我们相信,您的赞助将会对这个开源项目产生深远的影响。此外所有的赞助将用于购买GeneralUpdate实物周边产品奖励给项目贡献代码的社区伙伴,如果有实际贡献的小伙伴可以联系下方邮箱与我取得联系。
166+
Dear Sponsors,
174167

175-
目前项目的大小已经超出个人维护的精力范围之外设计维护实属不易,期待您的积极参与,让我们携手共创未来!
168+
This project is an automatic update component designed and maintained primarily by the author. The goal of this project is to provide a platform for sharing, learning, and innovation for developers and technology enthusiasts worldwide. We are committed to promoting technological development and the power of shared knowledge.
176169

177-
谢谢!
170+
However, we need your support. Your sponsorship will enable us to further improve the quality of the project, add more features, and provide a better user experience. Additionally, as a token of appreciation, we will display your company logo on the project website.
178171

179-
​ 作者:Juster Zhu
172+
This is a great opportunity to not only drive technological advancement but also to enhance your brand's visibility and community influence. We believe your sponsorship will have a profound impact on this open-source project. Furthermore, all sponsorships will be used to purchase GeneralUpdate merchandise to reward community partners who contribute code to the project. If you have made an actual contribution, please contact me via the email below.
180173

174+
The size of the project has exceeded the scope of individual maintenance, and designing and maintaining it is not easy. We look forward to your active participation in creating a better future together!
181175

176+
Thank you!
182177

183-
![打赏](imgs/payment.jpg)
178+
​ Author: Juster

0 commit comments

Comments
 (0)