Compare commits

...

82 Commits

Author SHA1 Message Date
997e176017 released v1.42.0 2024-02-26 14:08:07 +08:00
8f9da1cf83 ci: update workflows config. 2024-02-26 14:08:00 +08:00
6b29e84fda ci: update workflows config. 2024-02-26 14:05:13 +08:00
317f2db41f doc: update docs/feds.md 2024-02-26 14:01:35 +08:00
2c7400d446 doc: update README.md. 2024-02-12 14:22:53 +00:00
9549a30646 doc: update CONTRIBUTING.md. 2024-02-12 14:22:52 +00:00
77b4802177 doc: update docs/dart.md (#516)
* 新增Kotlin的高阶函数用法

* 新增和调整若干Kotlin示例代码
[新增] 扩展函数
[新增] 运算符重载
[新增] 中缀表达式
[新增] 次构造函数
[新增] Data 数据类
[新增] 内部类
[新增] object 单例类
[修改] 主构造函数示范代码,调整了部分缩进和变量定义。

* 新增Dart部分示例代码
[新增] 扩展函数
[新增] 运算符重载函数
[新增] 延迟初始化
2024-02-12 22:21:24 +08:00
7f9b132db9 doc: Update README.md (#102) 2024-02-12 22:19:02 +08:00
58745e7a4d doc: Update README.md #102 2024-02-10 18:10:52 +08:00
1d9d2f798c doc: update README.md. 2024-02-09 08:15:38 +00:00
8e11109e6f doc: update CONTRIBUTING.md. 2024-02-09 08:15:37 +00:00
2f6c263221 doc: update docs/kotlin.md (#515)
* 新增Kotlin的高阶函数用法

* 新增和调整若干Kotlin示例代码
[新增] 扩展函数
[新增] 运算符重载
[新增] 中缀表达式
[新增] 次构造函数
[新增] Data 数据类
[新增] 内部类
[新增] object 单例类
[修改] 主构造函数示范代码,调整了部分缩进和变量定义。
2024-02-09 16:14:36 +08:00
b8d46f0cee doc: update README.md. 2024-02-08 06:57:37 +00:00
70367ebff8 doc: update CONTRIBUTING.md. 2024-02-08 06:57:36 +00:00
c60876d078 doc: update docs/cs.md (#514) 2024-02-08 14:56:15 +08:00
e391ce4cd3 doc: update README.md. 2024-02-06 07:36:43 +00:00
f28f625a93 doc: update CONTRIBUTING.md. 2024-02-06 07:36:42 +00:00
bfc4a0198d doc: Update linux-command.md
- https://github.com/jaywcjlove/reference/discussions/434#discussioncomment-8366371
2024-02-06 15:35:41 +08:00
9436578123 doc: Update README.md 2024-02-01 22:37:18 +08:00
fd88141567 doc: Update README.md (#102) 2024-02-01 10:05:06 +08:00
2c10272d01 doc: update README.md. 2024-01-30 13:28:59 +00:00
a6bb4625d7 doc: update CONTRIBUTING.md. 2024-01-30 13:28:58 +00:00
cb1c236f5c doc: Update README.md (#102) 2024-01-30 21:27:49 +08:00
466c3c073d doc: update README.md. 2024-01-23 03:17:34 +00:00
56f1ce20a1 doc: update CONTRIBUTING.md. 2024-01-23 03:17:33 +00:00
119df317f2 fix: update docs/markdown.md (#509) 2024-01-23 11:16:21 +08:00
532cb88cf0 doc: Update README.md 2024-01-13 14:22:38 +08:00
b5f5c95680 doc: update README.md. 2024-01-13 06:22:22 +00:00
9d0cfca668 doc: update CONTRIBUTING.md. 2024-01-13 06:22:22 +00:00
4c02dfd878 doc: update docs/chown.md #503 2024-01-13 14:19:08 +08:00
83655d42a5 doc: update README.md. 2024-01-13 05:38:54 +00:00
e4bc989560 doc: update CONTRIBUTING.md. 2024-01-13 05:38:54 +00:00
05dae25ae7 feat: add chown.md (#503)
* 修改我在contributing.md的镜像链接

* chown备忘清单
2024-01-13 13:37:51 +08:00
f500aae1e7 doc: update README.md. 2024-01-01 13:03:35 +00:00
adcf084901 doc: update CONTRIBUTING.md. 2024-01-01 13:03:34 +00:00
3cabca0a7a doc: update README.md (#102 #496)
add ref.wdft.com
2024-01-01 21:01:55 +08:00
6d6ee93d7c doc: Update README.md (#102) 2023-12-30 19:31:25 +08:00
7663e0aa72 doc: update docs/nginx.md #493 2023-12-25 16:46:52 +08:00
70518c3d9a doc: update README.md. 2023-12-25 08:38:19 +00:00
26f49c9bc6 doc: update CONTRIBUTING.md. 2023-12-25 08:38:18 +00:00
76dc31a30c doc: update nginx.md (#493)
* add ulimit config of nginx

* minor
2023-12-25 16:36:57 +08:00
3bdcc831c4 doc: Update README.md #102 2023-12-22 20:10:43 +08:00
a2795d4691 doc: update README.md. 2023-12-22 12:08:37 +00:00
fa55cc17d1 doc: update CONTRIBUTING.md. 2023-12-22 12:08:37 +00:00
7f66d28d56 doc: Update README.md (#492) (#102) 2023-12-22 20:07:16 +08:00
de76161779 doc: update docs/docker.md 2023-12-22 13:04:21 +08:00
b935a35165 doc: update docs/kotlin.md 2023-12-22 13:00:44 +08:00
e1fad67e75 doc: update docs/linux-command.md #491 2023-12-22 08:38:27 +08:00
063369866e doc: update README.md. 2023-12-22 00:11:12 +00:00
1f6bcaabdf doc: update CONTRIBUTING.md. 2023-12-22 00:11:12 +00:00
1ee3fb8bed doc: Update linux-command.md (#491)
添加文件描述符、前后台等命令
2023-12-22 08:10:10 +08:00
a0bd5f7304 doc: update README.md. 2023-12-12 22:40:28 +00:00
534f39c6a7 doc: update CONTRIBUTING.md. 2023-12-12 22:40:27 +00:00
6cb067ce06 doc: Update README.md (#484 #102) 2023-12-13 06:39:02 +08:00
c8aba156f7 doc: update README.md. 2023-12-12 09:25:27 +00:00
53693bdeba doc: update CONTRIBUTING.md. 2023-12-12 09:25:26 +00:00
2dd35ecb40 doc: Update README.md #102 2023-12-12 17:23:59 +08:00
c278fb2454 doc: update docs/kotlin.md (#482)
* doc: update

* fix: kotlin 方法默认参数指定其类型;

---------

Co-authored-by: 小弟调调™ <kennyiseeyou@gmail.com>
2023-12-11 11:24:49 +08:00
ab0d82e7f5 doc: update README.md. 2023-12-09 11:28:27 +00:00
f726b3c6d4 doc: update CONTRIBUTING.md. 2023-12-09 11:28:26 +00:00
300aa903bd doc: update docs/tar.md (#480) 2023-12-09 19:27:23 +08:00
e332fa127f doc: update README.md. 2023-12-08 05:11:55 +00:00
6653bed2eb doc: update CONTRIBUTING.md. 2023-12-08 05:11:54 +00:00
3f822852bf doc: update docker.md (#479) 2023-12-08 13:10:20 +08:00
3e71fee21c chore(deps): update dependency prettier to v3 (#390)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-07 16:36:31 +08:00
3a8b1a2cd7 doc: Update docs/javascript.md 2023-12-07 16:34:42 +08:00
bfe8934e88 doc: Update docs/javascript.md 2023-12-07 16:33:45 +08:00
6b737583ee chore: update .dockerignore 2023-12-07 00:01:02 +08:00
108c8005d4 ci: update workflows config. 2023-12-06 23:56:46 +08:00
75830aa8bc ci: update workflows config. 2023-12-06 23:40:49 +08:00
7e8f89418c doc: update README.md. 2023-12-06 14:47:38 +00:00
6f94d01850 doc: update CONTRIBUTING.md. 2023-12-06 14:47:37 +00:00
bd9c837102 feat: add github-copilot.md (#475)
* Add GitHub Copilot documentation

* Add inline chat useful instruction
2023-12-06 22:46:15 +08:00
d29ac4215c doc: update README.md. 2023-12-04 03:24:05 +00:00
a548bac591 doc: update CONTRIBUTING.md. 2023-12-04 03:24:04 +00:00
0f22978db4 doc: update git.md (#472)
Co-authored-by: zlfyuan <741136856@qq.com>
2023-12-04 11:22:45 +08:00
4b8567131f doc: Update README.md #102 2023-12-02 15:12:10 +08:00
6c0c6508ab doc: Update README.md 2023-12-01 18:34:55 +08:00
08b48b842f doc: update README.md. 2023-12-01 07:38:01 +00:00
6e2f615551 doc: update CONTRIBUTING.md. 2023-12-01 07:38:00 +00:00
fed14313e4 doc: Update README.md #102 2023-12-01 15:37:00 +08:00
9c7c381849 ci: update workflows config. 2023-11-26 20:12:06 +08:00
21 changed files with 1894 additions and 661 deletions

View File

@ -9,10 +9,10 @@ jobs:
if: github.repository == 'jaywcjlove/reference' if: github.repository == 'jaywcjlove/reference'
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- uses: actions/setup-node@v3 - uses: actions/setup-node@v4
with: with:
node-version: 18 node-version: 20
- run: npm install - run: npm install
- run: npm run build - run: npm run build
@ -84,7 +84,7 @@ jobs:
id: changelog id: changelog
uses: jaywcjlove/changelog-generator@main uses: jaywcjlove/changelog-generator@main
with: with:
filter-author: (小弟调调™|github-actions-bot|@github-actions-bot|dependabot|renovate\\[bot\\]|dependabot\\[bot\\]|Renovate Bot) filter-author: (小弟调调™|github-actions-bot|\@github\-actions\-bot|dependabot|renovate\\[bot\\]|dependabot\\[bot\\]|Renovate Bot)
filter: (^[\s]+?[R|r]elease)|(^[R|r]elease) filter: (^[\s]+?[R|r]elease)|(^[R|r]elease)
- name: Create Release - name: Create Release
@ -124,13 +124,15 @@ jobs:
``` ```
# Create Docker Image # Create Docker Image
- uses: docker/setup-buildx-action@v2 - uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub - name: Login to Docker Hub
uses: docker/login-action@v2 uses: docker/login-action@v3
with: with:
username: ${{ secrets.DOCKER_USER }} username: ${{ secrets.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASSWORD }} password: ${{ secrets.DOCKER_PASSWORD }}
- run: docker buildx prune
- name: Build and push image:latest - name: Build and push image:latest
uses: docker/build-push-action@v3 uses: docker/build-push-action@v3
with: with:

View File

@ -9,10 +9,10 @@ jobs:
if: github.repository == 'jaywcjlove/reference' if: github.repository == 'jaywcjlove/reference'
runs-on: windows-latest runs-on: windows-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- uses: actions/setup-node@v3 - uses: actions/setup-node@v4
with: with:
node-version: 16 node-version: 20
- run: npm install - run: npm install
- run: npm run build - run: npm run build

View File

@ -147,7 +147,7 @@ REF_LABEL=网站首页
- [linzhe.top](https://linzhe.top/) - [linzhe.top](https://linzhe.top/)
- [xushanxiang.com](https://xushanxiang.com/ref/) - [xushanxiang.com](https://xushanxiang.com/ref/)
- [winnerzr01.github.io](https://winnerzr01.github.io/Quick-Reference/index.html) - [winnerzr01.github.io](https://winnerzr01.github.io/Quick-Reference/index.html)
- [hestudio.org](https://quickref.hestudio.org) - [quickref.hestudio.net](https://quickref.hestudio.net)
- [surcode.cn](https://ref.surcode.cn) - [surcode.cn](https://ref.surcode.cn)
- [cms.im](https://quickref.cms.im/) - [cms.im](https://quickref.cms.im/)
- [nuomiphp.com](https://reference.tool.nuomiphp.com/) - [nuomiphp.com](https://reference.tool.nuomiphp.com/)
@ -219,39 +219,45 @@ jobs:
<a href="https://github.com/mofelee" title="mofelee"> <a href="https://github.com/mofelee" title="mofelee">
<img src="https://avatars.githubusercontent.com/u/5069410?v=4" width="42;" alt="mofelee"/> <img src="https://avatars.githubusercontent.com/u/5069410?v=4" width="42;" alt="mofelee"/>
</a> </a>
<a href="https://github.com/Country-If" title="Maylon">
<img src="https://avatars.githubusercontent.com/u/62837275?v=4" width="42;" alt="Maylon"/>
</a>
<a href="https://github.com/JeffersonHuang" title="Jefferson Huang"> <a href="https://github.com/JeffersonHuang" title="Jefferson Huang">
<img src="https://avatars.githubusercontent.com/u/47512530?v=4" width="42;" alt="Jefferson Huang"/> <img src="https://avatars.githubusercontent.com/u/47512530?v=4" width="42;" alt="Jefferson Huang"/>
</a> </a>
<a href="https://github.com/aixcyi" title="砹小翼"> <a href="https://github.com/aixcyi" title="砹小翼">
<img src="https://avatars.githubusercontent.com/u/75880483?v=4" width="42;" alt="砹小翼"/> <img src="https://avatars.githubusercontent.com/u/75880483?v=4" width="42;" alt="砹小翼"/>
</a> </a>
<a href="https://github.com/Alex-Programmer-Bro" title="Alex"> <a href="https://github.com/Alex20180512" title="Alex">
<img src="https://avatars.githubusercontent.com/u/115539090?v=4" width="42;" alt="Alex"/> <img src="https://avatars.githubusercontent.com/u/115539090?v=4" width="42;" alt="Alex"/>
</a> </a>
<a href="https://github.com/Country-If" title="Maylon"> <a href="https://github.com/undefined-hestudio" title="undefined">
<img src="https://avatars.githubusercontent.com/u/62837275?v=4" width="42;" alt="Maylon"/> <img src="https://avatars.githubusercontent.com/u/119711513?v=4" width="42;" alt="undefined"/>
</a>
<a href="https://github.com/LufsX" title="LufsX">
<img src="https://avatars.githubusercontent.com/u/33221883?v=4" width="42;" alt="LufsX"/>
</a>
<a href="https://github.com/expoli" title="expoli">
<img src="https://avatars.githubusercontent.com/u/31023767?v=4" width="42;" alt="expoli"/>
</a>
<a href="https://github.com/k23223" title="k23223">
<img src="https://avatars.githubusercontent.com/u/57606136?v=4" width="42;" alt="k23223"/>
</a> </a>
<a href="https://github.com/eryajf" title="二丫讲梵"> <a href="https://github.com/eryajf" title="二丫讲梵">
<img src="https://avatars.githubusercontent.com/u/33259379?v=4" width="42;" alt="二丫讲梵"/> <img src="https://avatars.githubusercontent.com/u/33259379?v=4" width="42;" alt="二丫讲梵"/>
</a> </a>
<a href="https://github.com/LiuYuan-SHU" title="Yuan Liu"> <a href="https://github.com/k23223" title="k23223">
<img src="https://avatars.githubusercontent.com/u/96400967?v=4" width="42;" alt="Yuan Liu"/> <img src="https://avatars.githubusercontent.com/u/57606136?v=4" width="42;" alt="k23223"/>
</a>
<a href="https://github.com/expoli" title="expoli">
<img src="https://avatars.githubusercontent.com/u/31023767?v=4" width="42;" alt="expoli"/>
</a> </a>
<a href="https://github.com/mailbaoer" title="baoer"> <a href="https://github.com/mailbaoer" title="baoer">
<img src="https://avatars.githubusercontent.com/u/5282978?v=4" width="42;" alt="baoer"/> <img src="https://avatars.githubusercontent.com/u/5282978?v=4" width="42;" alt="baoer"/>
</a> </a>
<a href="https://github.com/LufsX" title="LufsX">
<img src="https://avatars.githubusercontent.com/u/33221883?v=4" width="42;" alt="LufsX"/>
</a>
<a href="https://github.com/LiuYuan-SHU" title="Yuan Liu">
<img src="https://avatars.githubusercontent.com/u/96400967?v=4" width="42;" alt="Yuan Liu"/>
</a>
<a href="https://github.com/chaos-cn" title="chaos"> <a href="https://github.com/chaos-cn" title="chaos">
<img src="https://avatars.githubusercontent.com/u/71205599?v=4" width="42;" alt="chaos"/> <img src="https://avatars.githubusercontent.com/u/71205599?v=4" width="42;" alt="chaos"/>
</a> </a>
<a href="https://github.com/1250422131" title="萌新杰少">
<img src="https://avatars.githubusercontent.com/u/52126790?v=4" width="42;" alt="萌新杰少"/>
</a>
<a href="https://github.com/MackDing" title="Blossom"> <a href="https://github.com/MackDing" title="Blossom">
<img src="https://avatars.githubusercontent.com/u/19878893?v=4" width="42;" alt="Blossom"/> <img src="https://avatars.githubusercontent.com/u/19878893?v=4" width="42;" alt="Blossom"/>
</a> </a>
@ -261,200 +267,47 @@ jobs:
<a href="https://github.com/qyl27" title="秋 雨落"> <a href="https://github.com/qyl27" title="秋 雨落">
<img src="https://avatars.githubusercontent.com/u/53731501?v=4" width="42;" alt="秋 雨落"/> <img src="https://avatars.githubusercontent.com/u/53731501?v=4" width="42;" alt="秋 雨落"/>
</a> </a>
<a href="https://github.com/undefined-hestudio" title="undefined"> <a href="https://github.com/lvelvee" title="Lve Lvee">
<img src="https://avatars.githubusercontent.com/u/119711513?v=4" width="42;" alt="undefined"/> <img src="https://avatars.githubusercontent.com/u/25785753?v=4" width="42;" alt="Lve Lvee"/>
</a>
<a href="https://github.com/webeautiful" title="Albert">
<img src="https://avatars.githubusercontent.com/u/3364316?v=4" width="42;" alt="Albert"/>
</a>
<a href="https://github.com/dadatom" title="Da Da">
<img src="https://avatars.githubusercontent.com/u/33886943?v=4" width="42;" alt="Da Da"/>
</a>
<a href="https://github.com/XYZscratcher" title="XYZ">
<img src="https://avatars.githubusercontent.com/u/108533817?v=4" width="42;" alt="XYZ"/>
</a>
<a href="https://github.com/1834423612" title="kjch">
<img src="https://avatars.githubusercontent.com/u/49981661?v=4" width="42;" alt="kjch"/>
</a>
<a href="https://github.com/mancuoj" title="mancuoj">
<img src="https://avatars.githubusercontent.com/u/45707684?v=4" width="42;" alt="mancuoj"/>
</a>
<a href="https://github.com/pangxiaoli" title="pangxiaoli">
<img src="https://avatars.githubusercontent.com/u/54620953?v=4" width="42;" alt="pangxiaoli"/>
</a>
<a href="https://github.com/partoneplay" title="partoneplay">
<img src="https://avatars.githubusercontent.com/u/5189132?v=4" width="42;" alt="partoneplay"/>
</a>
<a href="https://github.com/ryanhex53" title="ryanhex53">
<img src="https://avatars.githubusercontent.com/u/360426?v=4" width="42;" alt="ryanhex53"/>
</a>
<a href="https://github.com/catcto" title="catcto">
<img src="https://avatars.githubusercontent.com/u/5467932?v=4" width="42;" alt="catcto"/>
</a>
<a href="https://github.com/itldg" title="老大哥">
<img src="https://avatars.githubusercontent.com/u/13432299?v=4" width="42;" alt="老大哥"/>
</a> </a>
<a href="https://github.com/wsypower" title="魏"> <a href="https://github.com/wsypower" title="魏">
<img src="https://avatars.githubusercontent.com/u/31298317?v=4" width="42;" alt="魏"/> <img src="https://avatars.githubusercontent.com/u/31298317?v=4" width="42;" alt="魏"/>
</a> </a>
<a href="https://github.com/13812700839" title="花殇"> <a href="https://github.com/itldg" title="老大哥">
<img src="https://avatars.githubusercontent.com/u/58072506?v=4" width="42;" alt="花殇"/> <img src="https://avatars.githubusercontent.com/u/13432299?v=4" width="42;" alt="老大哥"/>
</a> </a>
<a href="https://github.com/dousha0w0" title="dousha0w0"> <a href="https://github.com/catcto" title="小武Alan">
<img src="https://avatars.githubusercontent.com/u/52566311?v=4" width="42;" alt="dousha0w0"/> <img src="https://avatars.githubusercontent.com/u/5467932?v=4" width="42;" alt="小武Alan"/>
</a> </a>
<a href="https://github.com/Brid9e" title="Joe"> <a href="https://github.com/ryanhex53" title="ryanhex53">
<img src="https://avatars.githubusercontent.com/u/85558909?v=4" width="42;" alt="Joe"/> <img src="https://avatars.githubusercontent.com/u/360426?v=4" width="42;" alt="ryanhex53"/>
</a> </a>
<a href="https://github.com/ch3nnn" title="chentong"> <a href="https://github.com/partoneplay" title="partoneplay">
<img src="https://avatars.githubusercontent.com/u/40114564?v=4" width="42;" alt="chentong"/> <img src="https://avatars.githubusercontent.com/u/5189132?v=4" width="42;" alt="partoneplay"/>
</a> </a>
<a href="https://github.com/CharlotteZeng" title="hanchZ"> <a href="https://github.com/pangxiaoli" title="pangxiaoli">
<img src="https://avatars.githubusercontent.com/u/19461184?v=4" width="42;" alt="hanchZ"/> <img src="https://avatars.githubusercontent.com/u/54620953?v=4" width="42;" alt="pangxiaoli"/>
</a> </a>
<a href="https://github.com/ohto-ai" title="Choo"> <a href="https://github.com/mancuoj" title="mancuoj">
<img src="https://avatars.githubusercontent.com/u/46275725?v=4" width="42;" alt="Choo"/> <img src="https://avatars.githubusercontent.com/u/45707684?v=4" width="42;" alt="mancuoj"/>
</a> </a>
<a href="https://github.com/Damao2250" title="Damao"> <a href="https://github.com/1834423612" title="kjch">
<img src="https://avatars.githubusercontent.com/u/19251992?v=4" width="42;" alt="Damao"/> <img src="https://avatars.githubusercontent.com/u/49981661?v=4" width="42;" alt="kjch"/>
</a>
<a href="https://github.com/dasferco" title="Dasferco">
<img src="https://avatars.githubusercontent.com/u/92622404?v=4" width="42;" alt="Dasferco"/>
</a>
<a href="https://github.com/demigodliu" title="DemigodLiu">
<img src="https://avatars.githubusercontent.com/u/30372735?v=4" width="42;" alt="DemigodLiu"/>
</a>
<a href="https://github.com/eeeeeio" title="EEEEE">
<img src="https://avatars.githubusercontent.com/u/20723545?v=4" width="42;" alt="EEEEE"/>
</a>
<a href="https://github.com/sirius-fan" title="Fan">
<img src="https://avatars.githubusercontent.com/u/25720015?v=4" width="42;" alt="Fan"/>
</a>
<a href="https://github.com/Fuku-L" title="Fuku-L">
<img src="https://avatars.githubusercontent.com/u/38535911?v=4" width="42;" alt="Fuku-L"/>
</a>
<a href="https://github.com/gongyeheyu" title="GONGYE Heyu">
<img src="https://avatars.githubusercontent.com/u/85177605?v=4" width="42;" alt="GONGYE Heyu"/>
</a>
<a href="https://github.com/Ding-Kyoma" title="HooinKyoma">
<img src="https://avatars.githubusercontent.com/u/44542198?v=4" width="42;" alt="HooinKyoma"/>
</a>
<a href="https://github.com/ljq" title="Jack Liu">
<img src="https://avatars.githubusercontent.com/u/7278286?v=4" width="42;" alt="Jack Liu"/>
</a>
<a href="https://github.com/jasnzhuang" title="Jason Zhuang">
<img src="https://avatars.githubusercontent.com/u/16612921?v=4" width="42;" alt="Jason Zhuang"/>
</a>
<a href="https://github.com/JetSquirrel" title="JetSquirrel">
<img src="https://avatars.githubusercontent.com/u/20291255?v=4" width="42;" alt="JetSquirrel"/>
</a>
<a href="https://github.com/LightQuanta" title="Light_Quanta">
<img src="https://avatars.githubusercontent.com/u/18213217?v=4" width="42;" alt="Light_Quanta"/>
</a>
<a href="https://github.com/Lihuagreek" title="Lihuagreek">
<img src="https://avatars.githubusercontent.com/u/51040740?v=4" width="42;" alt="Lihuagreek"/>
</a>
<a href="https://github.com/likeshop-github" title="LikeShop技术社区">
<img src="https://avatars.githubusercontent.com/u/77180968?v=4" width="42;" alt="LikeShop技术社区"/>
</a>
<a href="https://github.com/mariuszmichalowski" title="Mariusz Michalowski">
<img src="https://avatars.githubusercontent.com/u/92091891?v=4" width="42;" alt="Mariusz Michalowski"/>
</a>
<a href="https://github.com/malcolmyu" title="Minghao Yu">
<img src="https://avatars.githubusercontent.com/u/3203962?v=4" width="42;" alt="Minghao Yu"/>
</a>
<a href="https://github.com/Moeyuuko" title="Moeyuuko">
<img src="https://avatars.githubusercontent.com/u/14266681?v=4" width="42;" alt="Moeyuuko"/>
</a>
<a href="https://github.com/mo3et" title="Monet Lee">
<img src="https://avatars.githubusercontent.com/u/34803812?v=4" width="42;" alt="Monet Lee"/>
</a>
<a href="https://github.com/HanaNoryu" title="Noryu">
<img src="https://avatars.githubusercontent.com/u/109856546?v=4" width="42;" alt="Noryu"/>
</a>
<a href="https://github.com/Perzch" title="Perzch">
<img src="https://avatars.githubusercontent.com/u/67987641?v=4" width="42;" alt="Perzch"/>
</a>
<a href="https://github.com/PipecraftNet" title="Pipecraft">
<img src="https://avatars.githubusercontent.com/u/88728670?v=4" width="42;" alt="Pipecraft"/>
</a>
<a href="https://github.com/sevenleave" title="Poirot Hercule">
<img src="https://avatars.githubusercontent.com/u/24411140?v=4" width="42;" alt="Poirot Hercule"/>
</a>
<a href="https://github.com/QDelta" title="QDelta">
<img src="https://avatars.githubusercontent.com/u/60222316?v=4" width="42;" alt="QDelta"/>
</a>
<a href="https://github.com/RivailleF" title="RivailleF">
<img src="https://avatars.githubusercontent.com/u/93083015?v=4" width="42;" alt="RivailleF"/>
</a>
<a href="https://github.com/qinxiongzhou" title="Ryan Zhou">
<img src="https://avatars.githubusercontent.com/u/33239096?v=4" width="42;" alt="Ryan Zhou"/>
</a>
<a href="https://github.com/SkylarLeo" title="SkylarLeo">
<img src="https://avatars.githubusercontent.com/u/107191230?v=4" width="42;" alt="SkylarLeo"/>
</a>
<a href="https://github.com/YLee9527" title="Terry Young">
<img src="https://avatars.githubusercontent.com/u/18697332?v=4" width="42;" alt="Terry Young"/>
</a>
<a href="https://github.com/whb1998a" title="WHB">
<img src="https://avatars.githubusercontent.com/u/44045064?v=4" width="42;" alt="WHB"/>
</a>
<a href="https://github.com/BATTLEHAWK00" title="While True: learn()">
<img src="https://avatars.githubusercontent.com/u/45313304?v=4" width="42;" alt="While True: learn()"/>
</a>
<a href="https://github.com/hi-liyan" title="嘉木旅人">
<img src="https://avatars.githubusercontent.com/u/40056492?v=4" width="42;" alt="嘉木旅人"/>
</a>
<a href="https://github.com/Yo-gurts" title="Yogurt">
<img src="https://avatars.githubusercontent.com/u/44612841?v=4" width="42;" alt="Yogurt"/>
</a>
<a href="https://github.com/dfshizhiqiang" title="Zech">
<img src="https://avatars.githubusercontent.com/u/7030019?v=4" width="42;" alt="Zech"/>
</a>
<a href="https://github.com/yikuaibro" title="yikuaibro">
<img src="https://avatars.githubusercontent.com/u/44493045?v=4" width="42;" alt="yikuaibro"/>
</a>
<a href="https://github.com/zhu0629" title="cc">
<img src="https://avatars.githubusercontent.com/u/13188450?v=4" width="42;" alt="cc"/>
</a>
<a href="https://github.com/Leaderzhangyi" title="ZinkCas">
<img src="https://avatars.githubusercontent.com/u/46915666?v=4" width="42;" alt="ZinkCas"/>
</a>
<a href="https://github.com/y52y" title="Zyj">
<img src="https://avatars.githubusercontent.com/u/51304324?v=4" width="42;" alt="Zyj"/>
</a>
<a href="https://github.com/Lmmmmmm-bb" title="_lmmmmmm">
<img src="https://avatars.githubusercontent.com/u/54026110?v=4" width="42;" alt="_lmmmmmm"/>
</a>
<a href="https://github.com/chyok" title="chyok">
<img src="https://avatars.githubusercontent.com/u/32629225?v=4" width="42;" alt="chyok"/>
</a>
<a href="https://github.com/gaoxiaoduan" title="CoderDuan">
<img src="https://avatars.githubusercontent.com/u/69953511?v=4" width="42;" alt="CoderDuan"/>
</a>
<a href="https://github.com/cool9203" title="cool9203">
<img src="https://avatars.githubusercontent.com/u/29609607?v=4" width="42;" alt="cool9203"/>
</a>
<a href="https://github.com/fakevn" title="fakevn">
<img src="https://avatars.githubusercontent.com/u/11464386?v=4" width="42;" alt="fakevn"/>
</a>
<a href="https://github.com/fjqz177" title="fjqz177">
<img src="https://avatars.githubusercontent.com/u/83070583?v=4" width="42;" alt="fjqz177"/>
</a>
<a href="https://github.com/gi-b716" title="gi-b716">
<img src="https://avatars.githubusercontent.com/u/78394473?v=4" width="42;" alt="gi-b716"/>
</a>
<a href="https://github.com/godotc" title="godot42">
<img src="https://avatars.githubusercontent.com/u/79260851?v=4" width="42;" alt="godot42"/>
</a> </a>
<a href="https://github.com/greyhao" title="greyhao"> <a href="https://github.com/greyhao" title="greyhao">
<img src="https://avatars.githubusercontent.com/u/107107440?v=4" width="42;" alt="greyhao"/> <img src="https://avatars.githubusercontent.com/u/107107440?v=4" width="42;" alt="greyhao"/>
</a> </a>
<a href="https://github.com/sunny0826" title="Xudong Guo"> <a href="https://github.com/XYZscratcher" title="XYZ">
<img src="https://avatars.githubusercontent.com/u/24563928?v=4" width="42;" alt="Xudong Guo"/> <img src="https://avatars.githubusercontent.com/u/108533817?v=4" width="42;" alt="XYZ"/>
</a> </a>
<a href="https://github.com/hua03" title="hua03"> <a href="https://github.com/ljq" title="Jack Liu">
<img src="https://avatars.githubusercontent.com/u/19561959?v=4" width="42;" alt="hua03"/> <img src="https://avatars.githubusercontent.com/u/7278286?v=4" width="42;" alt="Jack Liu"/>
</a>
<a href="https://github.com/dadatom" title="Da Da">
<img src="https://avatars.githubusercontent.com/u/33886943?v=4" width="42;" alt="Da Da"/>
</a>
<a href="https://github.com/webeautiful" title="Albert">
<img src="https://avatars.githubusercontent.com/u/3364316?v=4" width="42;" alt="Albert"/>
</a> </a>
<a href="https://github.com/yanxuplay" title="hupilan"> <a href="https://github.com/yanxuplay" title="hupilan">
<img src="https://avatars.githubusercontent.com/u/69749541?v=4" width="42;" alt="hupilan"/> <img src="https://avatars.githubusercontent.com/u/69749541?v=4" width="42;" alt="hupilan"/>
@ -471,14 +324,17 @@ jobs:
<a href="https://github.com/joyfully-W" title="joyfully-W"> <a href="https://github.com/joyfully-W" title="joyfully-W">
<img src="https://avatars.githubusercontent.com/u/32212924?v=4" width="42;" alt="joyfully-W"/> <img src="https://avatars.githubusercontent.com/u/32212924?v=4" width="42;" alt="joyfully-W"/>
</a> </a>
<a href="https://github.com/jussker" title="jussker">
<img src="https://avatars.githubusercontent.com/u/33953356?v=4" width="42;" alt="jussker"/>
</a>
<a href="https://github.com/k983551019" title="k983551019"> <a href="https://github.com/k983551019" title="k983551019">
<img src="https://avatars.githubusercontent.com/u/48147837?v=4" width="42;" alt="k983551019"/> <img src="https://avatars.githubusercontent.com/u/48147837?v=4" width="42;" alt="k983551019"/>
</a> </a>
<a href="https://github.com/kdxcxs" title="kdxcxs"> <a href="https://github.com/kdxcxs" title="kdxcxs">
<img src="https://avatars.githubusercontent.com/u/18746192?v=4" width="42;" alt="kdxcxs"/> <img src="https://avatars.githubusercontent.com/u/18746192?v=4" width="42;" alt="kdxcxs"/>
</a> </a>
<a href="https://github.com/genius-kim" title="kim"> <a href="https://github.com/genius-kim" title="Kim同学">
<img src="https://avatars.githubusercontent.com/u/119488561?v=4" width="42;" alt="kim"/> <img src="https://avatars.githubusercontent.com/u/119488561?v=4" width="42;" alt="Kim同学"/>
</a> </a>
<a href="https://github.com/kubeme" title="kubernetes for me"> <a href="https://github.com/kubeme" title="kubernetes for me">
<img src="https://avatars.githubusercontent.com/u/16346220?v=4" width="42;" alt="kubernetes for me"/> <img src="https://avatars.githubusercontent.com/u/16346220?v=4" width="42;" alt="kubernetes for me"/>
@ -486,71 +342,236 @@ jobs:
<a href="https://github.com/larry-xue" title="larry"> <a href="https://github.com/larry-xue" title="larry">
<img src="https://avatars.githubusercontent.com/u/48818060?v=4" width="42;" alt="larry"/> <img src="https://avatars.githubusercontent.com/u/48818060?v=4" width="42;" alt="larry"/>
</a> </a>
<a href="https://github.com/liliangrong777" title="liliangrong777"> <a href="https://github.com/hua03" title="hua03">
<img src="https://avatars.githubusercontent.com/u/58727146?v=4" width="42;" alt="liliangrong777"/> <img src="https://avatars.githubusercontent.com/u/19561959?v=4" width="42;" alt="hua03"/>
</a> </a>
<a href="https://github.com/lykjjj" title="lykjjj"> <a href="https://github.com/gzttcydxx" title="gzttcydxx">
<img src="https://avatars.githubusercontent.com/u/58510058?v=4" width="42;" alt="lykjjj"/> <img src="https://avatars.githubusercontent.com/u/50025185?v=4" width="42;" alt="gzttcydxx"/>
</a> </a>
<a href="https://github.com/miclon-dev" title="miclon-dev"> <a href="https://github.com/sunny0826" title="Xudong Guo">
<img src="https://avatars.githubusercontent.com/u/111753685?v=4" width="42;" alt="miclon-dev"/> <img src="https://avatars.githubusercontent.com/u/24563928?v=4" width="42;" alt="Xudong Guo"/>
</a> </a>
<a href="https://github.com/onewesong" title="onewesong"> <a href="https://github.com/godotc" title="godot42">
<img src="https://avatars.githubusercontent.com/u/17920822?v=4" width="42;" alt="onewesong"/> <img src="https://avatars.githubusercontent.com/u/79260851?v=4" width="42;" alt="godot42"/>
</a> </a>
<a href="https://github.com/phygerr" title="phygerr"> <a href="https://github.com/gi-b716" title="gi-b716">
<img src="https://avatars.githubusercontent.com/u/42068889?v=4" width="42;" alt="phygerr"/> <img src="https://avatars.githubusercontent.com/u/78394473?v=4" width="42;" alt="gi-b716"/>
</a> </a>
<a href="https://github.com/Mowmowj" title="nexo"> <a href="https://github.com/fjqz177" title="fjqz177">
<img src="https://avatars.githubusercontent.com/u/24759562?v=4" width="42;" alt="nexo"/> <img src="https://avatars.githubusercontent.com/u/83070583?v=4" width="42;" alt="fjqz177"/>
</a> </a>
<a href="https://github.com/swift-fs" title="swift"> <a href="https://github.com/fakevn" title="fakevn">
<img src="https://avatars.githubusercontent.com/u/77133741?v=4" width="42;" alt="swift"/> <img src="https://avatars.githubusercontent.com/u/11464386?v=4" width="42;" alt="fakevn"/>
</a> </a>
<a href="https://github.com/wannima66" title="tmen"> <a href="https://github.com/cool9203" title="cool9203">
<img src="https://avatars.githubusercontent.com/u/26410255?v=4" width="42;" alt="tmen"/> <img src="https://avatars.githubusercontent.com/u/29609607?v=4" width="42;" alt="cool9203"/>
</a> </a>
<a href="https://github.com/wjjwkwindy" title="Hudson Alen"> <a href="https://github.com/gaoxiaoduan" title="CoderDuan">
<img src="https://avatars.githubusercontent.com/u/9508591?v=4" width="42;" alt="Hudson Alen"/> <img src="https://avatars.githubusercontent.com/u/69953511?v=4" width="42;" alt="CoderDuan"/>
</a> </a>
<a href="https://github.com/xing133" title="xing133"> <a href="https://github.com/chyok" title="chyok">
<img src="https://avatars.githubusercontent.com/u/5336490?v=4" width="42;" alt="xing133"/> <img src="https://avatars.githubusercontent.com/u/32629225?v=4" width="42;" alt="chyok"/>
</a> </a>
<a href="https://github.com/hiyms" title="yms"> <a href="https://github.com/zlfyuan" title="bgbgPang">
<img src="https://avatars.githubusercontent.com/u/84654050?v=4" width="42;" alt="yms"/> <img src="https://avatars.githubusercontent.com/u/19658018?v=4" width="42;" alt="bgbgPang"/>
</a> </a>
<a href="https://github.com/zhouhw0306" title="zhouhw0306"> <a href="https://github.com/Zeng-qh" title="都一样">
<img src="https://avatars.githubusercontent.com/u/82752681?v=4" width="42;" alt="zhouhw0306"/> <img src="https://avatars.githubusercontent.com/u/40046415?v=4" width="42;" alt="都一样"/>
</a>
<a href="https://github.com/zxx457" title="zxx457">
<img src="https://avatars.githubusercontent.com/u/114141362?v=4" width="42;" alt="zxx457"/>
</a>
<a href="https://github.com/lvzhenbo" title="吕振波">
<img src="https://avatars.githubusercontent.com/u/32427677?v=4" width="42;" alt="吕振波"/>
</a>
<a href="https://github.com/LuckyJie12" title="夜未央">
<img src="https://avatars.githubusercontent.com/u/102901105?v=4" width="42;" alt="夜未央"/>
</a>
<a href="https://github.com/ZIDOUZI" title="ZIDOUZI">
<img src="https://avatars.githubusercontent.com/u/53157536?v=4" width="42;" alt="ZIDOUZI"/>
</a>
<a href="https://github.com/lisheng741" title="芦荟柚子茶">
<img src="https://avatars.githubusercontent.com/u/53617305?v=4" width="42;" alt="芦荟柚子茶"/>
</a>
<a href="https://github.com/HuaChan233" title="花开花落">
<img src="https://avatars.githubusercontent.com/u/75212820?v=4" width="42;" alt="花开花落"/>
</a>
<a href="https://github.com/1250422131" title="萌新杰少">
<img src="https://avatars.githubusercontent.com/u/52126790?v=4" width="42;" alt="萌新杰少"/>
</a>
<a href="https://github.com/qwxingzhe" title="行者">
<img src="https://avatars.githubusercontent.com/u/7071651?v=4" width="42;" alt="行者"/>
</a> </a>
<a href="https://github.com/binscor" title="Zheng Nai Bin"> <a href="https://github.com/binscor" title="Zheng Nai Bin">
<img src="https://avatars.githubusercontent.com/u/37325821?v=4" width="42;" alt="Zheng Nai Bin"/> <img src="https://avatars.githubusercontent.com/u/37325821?v=4" width="42;" alt="Zheng Nai Bin"/>
</a> </a>
<a href="https://github.com/Zeng-qh" title="都一样"> <a href="https://github.com/qwxingzhe" title="行者">
<img src="https://avatars.githubusercontent.com/u/40046415?v=4" width="42;" alt="都一样"/> <img src="https://avatars.githubusercontent.com/u/7071651?v=4" width="42;" alt="行者"/>
</a>
<a href="https://github.com/HuaChan233" title="花开花落">
<img src="https://avatars.githubusercontent.com/u/75212820?v=4" width="42;" alt="花开花落"/>
</a>
<a href="https://github.com/lisheng741" title="芦荟柚子茶">
<img src="https://avatars.githubusercontent.com/u/53617305?v=4" width="42;" alt="芦荟柚子茶"/>
</a>
<a href="https://github.com/ZIDOUZI" title="ZIDOUZI">
<img src="https://avatars.githubusercontent.com/u/53157536?v=4" width="42;" alt="ZIDOUZI"/>
</a>
<a href="https://github.com/LuckyJie12" title="夜未央">
<img src="https://avatars.githubusercontent.com/u/102901105?v=4" width="42;" alt="夜未央"/>
</a>
<a href="https://github.com/lvzhenbo" title="吕振波">
<img src="https://avatars.githubusercontent.com/u/32427677?v=4" width="42;" alt="吕振波"/>
</a>
<a href="https://github.com/zxx457" title="zxx457">
<img src="https://avatars.githubusercontent.com/u/114141362?v=4" width="42;" alt="zxx457"/>
</a>
<a href="https://github.com/zhouhw0306" title="zhouhw0306">
<img src="https://avatars.githubusercontent.com/u/82752681?v=4" width="42;" alt="zhouhw0306"/>
</a>
<a href="https://github.com/hiyms" title="yms">
<img src="https://avatars.githubusercontent.com/u/84654050?v=4" width="42;" alt="yms"/>
</a>
<a href="https://github.com/xing133" title="xing133">
<img src="https://avatars.githubusercontent.com/u/5336490?v=4" width="42;" alt="xing133"/>
</a>
<a href="https://github.com/wjjwkwindy" title="Hudson Alen">
<img src="https://avatars.githubusercontent.com/u/9508591?v=4" width="42;" alt="Hudson Alen"/>
</a>
<a href="https://github.com/wannima66" title="tmen">
<img src="https://avatars.githubusercontent.com/u/26410255?v=4" width="42;" alt="tmen"/>
</a>
<a href="https://github.com/swift-fs" title="swift">
<img src="https://avatars.githubusercontent.com/u/77133741?v=4" width="42;" alt="swift"/>
</a>
<a href="https://github.com/suyangzuo" title="suyangzuo">
<img src="https://avatars.githubusercontent.com/u/50766353?v=4" width="42;" alt="suyangzuo"/>
</a>
<a href="https://github.com/Mowmowj" title="nexo">
<img src="https://avatars.githubusercontent.com/u/24759562?v=4" width="42;" alt="nexo"/>
</a>
<a href="https://github.com/phygerr" title="phygerr">
<img src="https://avatars.githubusercontent.com/u/42068889?v=4" width="42;" alt="phygerr"/>
</a>
<a href="https://github.com/onewesong" title="onewesong">
<img src="https://avatars.githubusercontent.com/u/17920822?v=4" width="42;" alt="onewesong"/>
</a>
<a href="https://github.com/miclon-dev" title="miclon-dev">
<img src="https://avatars.githubusercontent.com/u/111753685?v=4" width="42;" alt="miclon-dev"/>
</a>
<a href="https://github.com/lykjjj" title="lykjjj">
<img src="https://avatars.githubusercontent.com/u/58510058?v=4" width="42;" alt="lykjjj"/>
</a>
<a href="https://github.com/liliangrong777" title="liliangrong777">
<img src="https://avatars.githubusercontent.com/u/58727146?v=4" width="42;" alt="liliangrong777"/>
</a>
<a href="https://github.com/Moeyuuko" title="Moeyuuko">
<img src="https://avatars.githubusercontent.com/u/14266681?v=4" width="42;" alt="Moeyuuko"/>
</a>
<a href="https://github.com/malcolmyu" title="Minghao Yu">
<img src="https://avatars.githubusercontent.com/u/3203962?v=4" width="42;" alt="Minghao Yu"/>
</a>
<a href="https://github.com/mariuszmichalowski" title="Mariusz Michalowski">
<img src="https://avatars.githubusercontent.com/u/92091891?v=4" width="42;" alt="Mariusz Michalowski"/>
</a>
<a href="https://github.com/likeshop-github" title="LikeShop技术社区">
<img src="https://avatars.githubusercontent.com/u/77180968?v=4" width="42;" alt="LikeShop技术社区"/>
</a>
<a href="https://github.com/Lihuagreek" title="Lihuagreek">
<img src="https://avatars.githubusercontent.com/u/51040740?v=4" width="42;" alt="Lihuagreek"/>
</a>
<a href="https://github.com/LightQuanta" title="Light_Quanta">
<img src="https://avatars.githubusercontent.com/u/18213217?v=4" width="42;" alt="Light_Quanta"/>
</a>
<a href="https://github.com/JetSquirrel" title="JetSquirrel">
<img src="https://avatars.githubusercontent.com/u/20291255?v=4" width="42;" alt="JetSquirrel"/>
</a>
<a href="https://github.com/jasnzhuang" title="Jason Zhuang">
<img src="https://avatars.githubusercontent.com/u/16612921?v=4" width="42;" alt="Jason Zhuang"/>
</a>
<a href="https://github.com/Ding-Kyoma" title="HooinKyoma">
<img src="https://avatars.githubusercontent.com/u/44542198?v=4" width="42;" alt="HooinKyoma"/>
</a>
<a href="https://github.com/gongyeheyu" title="GONGYE Heyu">
<img src="https://avatars.githubusercontent.com/u/85177605?v=4" width="42;" alt="GONGYE Heyu"/>
</a>
<a href="https://github.com/Fuku-L" title="Fuku-L">
<img src="https://avatars.githubusercontent.com/u/38535911?v=4" width="42;" alt="Fuku-L"/>
</a>
<a href="https://github.com/sirius-fan" title="Fan">
<img src="https://avatars.githubusercontent.com/u/25720015?v=4" width="42;" alt="Fan"/>
</a>
<a href="https://github.com/eeeeeio" title="EEEEE">
<img src="https://avatars.githubusercontent.com/u/20723545?v=4" width="42;" alt="EEEEE"/>
</a>
<a href="https://github.com/demigodliu" title="DemigodLiu">
<img src="https://avatars.githubusercontent.com/u/30372735?v=4" width="42;" alt="DemigodLiu"/>
</a>
<a href="https://github.com/dasferco" title="Dasferco">
<img src="https://avatars.githubusercontent.com/u/92622404?v=4" width="42;" alt="Dasferco"/>
</a>
<a href="https://github.com/Damao2250" title="Damao">
<img src="https://avatars.githubusercontent.com/u/19251992?v=4" width="42;" alt="Damao"/>
</a>
<a href="https://github.com/ohto-ai" title="Choo">
<img src="https://avatars.githubusercontent.com/u/46275725?v=4" width="42;" alt="Choo"/>
</a>
<a href="https://github.com/CharlotteZeng" title="hanchZ">
<img src="https://avatars.githubusercontent.com/u/19461184?v=4" width="42;" alt="hanchZ"/>
</a>
<a href="https://github.com/ch3nnn" title="chentong">
<img src="https://avatars.githubusercontent.com/u/40114564?v=4" width="42;" alt="chentong"/>
</a>
<a href="https://github.com/Brid9e" title="Joe">
<img src="https://avatars.githubusercontent.com/u/85558909?v=4" width="42;" alt="Joe"/>
</a>
<a href="https://github.com/dousha0w0" title="dousha0w0">
<img src="https://avatars.githubusercontent.com/u/52566311?v=4" width="42;" alt="dousha0w0"/>
</a>
<a href="https://github.com/13812700839" title="花殇">
<img src="https://avatars.githubusercontent.com/u/58072506?v=4" width="42;" alt="花殇"/>
</a>
<a href="https://github.com/Lmmmmmm-bb" title="_lmmmmmm">
<img src="https://avatars.githubusercontent.com/u/54026110?v=4" width="42;" alt="_lmmmmmm"/>
</a>
<a href="https://github.com/y52y" title="Zyj">
<img src="https://avatars.githubusercontent.com/u/51304324?v=4" width="42;" alt="Zyj"/>
</a>
<a href="https://github.com/Leaderzhangyi" title="ZinkCas">
<img src="https://avatars.githubusercontent.com/u/46915666?v=4" width="42;" alt="ZinkCas"/>
</a>
<a href="https://github.com/zhu0629" title="zhucong">
<img src="https://avatars.githubusercontent.com/u/13188450?v=4" width="42;" alt="zhucong"/>
</a>
<a href="https://github.com/yikuaibro" title="yikuaibro">
<img src="https://avatars.githubusercontent.com/u/44493045?v=4" width="42;" alt="yikuaibro"/>
</a>
<a href="https://github.com/dfshizhiqiang" title="Zech">
<img src="https://avatars.githubusercontent.com/u/7030019?v=4" width="42;" alt="Zech"/>
</a>
<a href="https://github.com/Yo-gurts" title="Yogurt">
<img src="https://avatars.githubusercontent.com/u/44612841?v=4" width="42;" alt="Yogurt"/>
</a>
<a href="https://github.com/hi-liyan" title="李李李">
<img src="https://avatars.githubusercontent.com/u/40056492?v=4" width="42;" alt="李李李"/>
</a>
<a href="https://github.com/BATTLEHAWK00" title="While True: learn()">
<img src="https://avatars.githubusercontent.com/u/45313304?v=4" width="42;" alt="While True: learn()"/>
</a>
<a href="https://github.com/whb1998a" title="WHB">
<img src="https://avatars.githubusercontent.com/u/44045064?v=4" width="42;" alt="WHB"/>
</a>
<a href="https://github.com/YLee9527" title="Terry Young">
<img src="https://avatars.githubusercontent.com/u/18697332?v=4" width="42;" alt="Terry Young"/>
</a>
<a href="https://github.com/Xiwin" title="Xiwin">
<img src="https://avatars.githubusercontent.com/u/107191230?v=4" width="42;" alt="Xiwin"/>
</a>
<a href="https://github.com/qinxiongzhou" title="Ryan Zhou">
<img src="https://avatars.githubusercontent.com/u/33239096?v=4" width="42;" alt="Ryan Zhou"/>
</a>
<a href="https://github.com/RivailleF" title="RivailleF">
<img src="https://avatars.githubusercontent.com/u/93083015?v=4" width="42;" alt="RivailleF"/>
</a>
<a href="https://github.com/QDelta" title="QDelta">
<img src="https://avatars.githubusercontent.com/u/60222316?v=4" width="42;" alt="QDelta"/>
</a>
<a href="https://github.com/sevenleave" title="Poirot Hercule">
<img src="https://avatars.githubusercontent.com/u/24411140?v=4" width="42;" alt="Poirot Hercule"/>
</a>
<a href="https://github.com/PipecraftNet" title="Pipecraft">
<img src="https://avatars.githubusercontent.com/u/88728670?v=4" width="42;" alt="Pipecraft"/>
</a>
<a href="https://github.com/Perzch" title="Perzch">
<img src="https://avatars.githubusercontent.com/u/67987641?v=4" width="42;" alt="Perzch"/>
</a>
<a href="https://github.com/PILIHU2022" title="PILIHU2022">
<img src="https://avatars.githubusercontent.com/u/100511118?v=4" width="42;" alt="PILIHU2022"/>
</a>
<a href="https://github.com/HanaNoryu" title="Noryu">
<img src="https://avatars.githubusercontent.com/u/109856546?v=4" width="42;" alt="Noryu"/>
</a>
<a href="https://github.com/NianwenDan" title="NianwenDan">
<img src="https://avatars.githubusercontent.com/u/74407127?v=4" width="42;" alt="NianwenDan"/>
</a>
<a href="https://github.com/mo3et" title="Monet Lee">
<img src="https://avatars.githubusercontent.com/u/34803812?v=4" width="42;" alt="Monet Lee"/>
</a><!--GAMFC-END--> </a><!--GAMFC-END-->
上图贡献者列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 自动生成贡献者图片。 上图贡献者列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 自动生成贡献者图片。

528
README.md
View File

@ -36,6 +36,8 @@ Quick Reference
[Oracle](./docs/oracle.md)<!--rehype:style=background: rgb(255 0 0);&class=contributing tag&data-lang=SQL--> [Oracle](./docs/oracle.md)<!--rehype:style=background: rgb(255 0 0);&class=contributing tag&data-lang=SQL-->
[Pytorch](./docs/pytorch.md)<!--rehype:style=background: rgb(238 76 44);&class=contributing tag&data-lang=Python&data-info=👆看看还缺点儿什么?--> [Pytorch](./docs/pytorch.md)<!--rehype:style=background: rgb(238 76 44);&class=contributing tag&data-lang=Python&data-info=👆看看还缺点儿什么?-->
[Vue 3](./docs/vue.md)<!--rehype:style=background: rgb(64 184 131);&class=contributing--> [Vue 3](./docs/vue.md)<!--rehype:style=background: rgb(64 184 131);&class=contributing-->
[Github Copilot](./docs/github-copilot.md)<!--rehype:style=background: rgb(125 45 220);&class=tag contributing&data-lang=AI&data-info=👆看看还缺点儿什么?-->
[Chown](./docs/chown.md)<!--rehype:style=background: rgb(12 75 51/var(\-\-bg\-opacity));&class=contributing-->
<!--rehype:class=home-card--> <!--rehype:class=home-card-->
## 编程 ## 编程
@ -145,6 +147,7 @@ Quick Reference
[Cargo](./docs/cargo.md)<!--rehype:style=background: rgb(71 71 71);&class=tag&data-lang=Rust--> [Cargo](./docs/cargo.md)<!--rehype:style=background: rgb(71 71 71);&class=tag&data-lang=Rust-->
[Curl](./docs/curl.md)<!--rehype:style=background: rgb(16 185 129);--> [Curl](./docs/curl.md)<!--rehype:style=background: rgb(16 185 129);-->
[Chmod](./docs/chmod.md)<!--rehype:style=background: rgb(16 185 129);--> [Chmod](./docs/chmod.md)<!--rehype:style=background: rgb(16 185 129);-->
[Chown](./docs/chown.md)<!--rehype:style=background: rgb(12 75 51/var(\-\-bg\-opacity));&class=contributing-->
[Cron](./docs/cron.md)<!--rehype:style=background: rgb(239 68 68);--> [Cron](./docs/cron.md)<!--rehype:style=background: rgb(239 68 68);-->
[CMake](./docs/cmake.md)<!--rehype:style=background: rgb(92 107 192);&class=contributing--> [CMake](./docs/cmake.md)<!--rehype:style=background: rgb(92 107 192);&class=contributing-->
[Make](./docs/make.md)<!--rehype:style=background: rgb(99 99 99);&class=contributing--> [Make](./docs/make.md)<!--rehype:style=background: rgb(99 99 99);&class=contributing-->
@ -251,39 +254,45 @@ Quick Reference
<a href="https://github.com/mofelee" title="mofelee"> <a href="https://github.com/mofelee" title="mofelee">
<img src="https://avatars.githubusercontent.com/u/5069410?v=4" width="42;" alt="mofelee"/> <img src="https://avatars.githubusercontent.com/u/5069410?v=4" width="42;" alt="mofelee"/>
</a> </a>
<a href="https://github.com/Country-If" title="Maylon">
<img src="https://avatars.githubusercontent.com/u/62837275?v=4" width="42;" alt="Maylon"/>
</a>
<a href="https://github.com/JeffersonHuang" title="Jefferson Huang"> <a href="https://github.com/JeffersonHuang" title="Jefferson Huang">
<img src="https://avatars.githubusercontent.com/u/47512530?v=4" width="42;" alt="Jefferson Huang"/> <img src="https://avatars.githubusercontent.com/u/47512530?v=4" width="42;" alt="Jefferson Huang"/>
</a> </a>
<a href="https://github.com/aixcyi" title="砹小翼"> <a href="https://github.com/aixcyi" title="砹小翼">
<img src="https://avatars.githubusercontent.com/u/75880483?v=4" width="42;" alt="砹小翼"/> <img src="https://avatars.githubusercontent.com/u/75880483?v=4" width="42;" alt="砹小翼"/>
</a> </a>
<a href="https://github.com/Alex-Programmer-Bro" title="Alex"> <a href="https://github.com/Alex20180512" title="Alex">
<img src="https://avatars.githubusercontent.com/u/115539090?v=4" width="42;" alt="Alex"/> <img src="https://avatars.githubusercontent.com/u/115539090?v=4" width="42;" alt="Alex"/>
</a> </a>
<a href="https://github.com/Country-If" title="Maylon"> <a href="https://github.com/undefined-hestudio" title="undefined">
<img src="https://avatars.githubusercontent.com/u/62837275?v=4" width="42;" alt="Maylon"/> <img src="https://avatars.githubusercontent.com/u/119711513?v=4" width="42;" alt="undefined"/>
</a>
<a href="https://github.com/LufsX" title="LufsX">
<img src="https://avatars.githubusercontent.com/u/33221883?v=4" width="42;" alt="LufsX"/>
</a>
<a href="https://github.com/expoli" title="expoli">
<img src="https://avatars.githubusercontent.com/u/31023767?v=4" width="42;" alt="expoli"/>
</a>
<a href="https://github.com/k23223" title="k23223">
<img src="https://avatars.githubusercontent.com/u/57606136?v=4" width="42;" alt="k23223"/>
</a> </a>
<a href="https://github.com/eryajf" title="二丫讲梵"> <a href="https://github.com/eryajf" title="二丫讲梵">
<img src="https://avatars.githubusercontent.com/u/33259379?v=4" width="42;" alt="二丫讲梵"/> <img src="https://avatars.githubusercontent.com/u/33259379?v=4" width="42;" alt="二丫讲梵"/>
</a> </a>
<a href="https://github.com/LiuYuan-SHU" title="Yuan Liu"> <a href="https://github.com/k23223" title="k23223">
<img src="https://avatars.githubusercontent.com/u/96400967?v=4" width="42;" alt="Yuan Liu"/> <img src="https://avatars.githubusercontent.com/u/57606136?v=4" width="42;" alt="k23223"/>
</a>
<a href="https://github.com/expoli" title="expoli">
<img src="https://avatars.githubusercontent.com/u/31023767?v=4" width="42;" alt="expoli"/>
</a> </a>
<a href="https://github.com/mailbaoer" title="baoer"> <a href="https://github.com/mailbaoer" title="baoer">
<img src="https://avatars.githubusercontent.com/u/5282978?v=4" width="42;" alt="baoer"/> <img src="https://avatars.githubusercontent.com/u/5282978?v=4" width="42;" alt="baoer"/>
</a> </a>
<a href="https://github.com/LufsX" title="LufsX">
<img src="https://avatars.githubusercontent.com/u/33221883?v=4" width="42;" alt="LufsX"/>
</a>
<a href="https://github.com/LiuYuan-SHU" title="Yuan Liu">
<img src="https://avatars.githubusercontent.com/u/96400967?v=4" width="42;" alt="Yuan Liu"/>
</a>
<a href="https://github.com/chaos-cn" title="chaos"> <a href="https://github.com/chaos-cn" title="chaos">
<img src="https://avatars.githubusercontent.com/u/71205599?v=4" width="42;" alt="chaos"/> <img src="https://avatars.githubusercontent.com/u/71205599?v=4" width="42;" alt="chaos"/>
</a> </a>
<a href="https://github.com/1250422131" title="萌新杰少">
<img src="https://avatars.githubusercontent.com/u/52126790?v=4" width="42;" alt="萌新杰少"/>
</a>
<a href="https://github.com/MackDing" title="Blossom"> <a href="https://github.com/MackDing" title="Blossom">
<img src="https://avatars.githubusercontent.com/u/19878893?v=4" width="42;" alt="Blossom"/> <img src="https://avatars.githubusercontent.com/u/19878893?v=4" width="42;" alt="Blossom"/>
</a> </a>
@ -293,200 +302,47 @@ Quick Reference
<a href="https://github.com/qyl27" title="秋 雨落"> <a href="https://github.com/qyl27" title="秋 雨落">
<img src="https://avatars.githubusercontent.com/u/53731501?v=4" width="42;" alt="秋 雨落"/> <img src="https://avatars.githubusercontent.com/u/53731501?v=4" width="42;" alt="秋 雨落"/>
</a> </a>
<a href="https://github.com/undefined-hestudio" title="undefined"> <a href="https://github.com/lvelvee" title="Lve Lvee">
<img src="https://avatars.githubusercontent.com/u/119711513?v=4" width="42;" alt="undefined"/> <img src="https://avatars.githubusercontent.com/u/25785753?v=4" width="42;" alt="Lve Lvee"/>
</a>
<a href="https://github.com/webeautiful" title="Albert">
<img src="https://avatars.githubusercontent.com/u/3364316?v=4" width="42;" alt="Albert"/>
</a>
<a href="https://github.com/dadatom" title="Da Da">
<img src="https://avatars.githubusercontent.com/u/33886943?v=4" width="42;" alt="Da Da"/>
</a>
<a href="https://github.com/XYZscratcher" title="XYZ">
<img src="https://avatars.githubusercontent.com/u/108533817?v=4" width="42;" alt="XYZ"/>
</a>
<a href="https://github.com/1834423612" title="kjch">
<img src="https://avatars.githubusercontent.com/u/49981661?v=4" width="42;" alt="kjch"/>
</a>
<a href="https://github.com/mancuoj" title="mancuoj">
<img src="https://avatars.githubusercontent.com/u/45707684?v=4" width="42;" alt="mancuoj"/>
</a>
<a href="https://github.com/pangxiaoli" title="pangxiaoli">
<img src="https://avatars.githubusercontent.com/u/54620953?v=4" width="42;" alt="pangxiaoli"/>
</a>
<a href="https://github.com/partoneplay" title="partoneplay">
<img src="https://avatars.githubusercontent.com/u/5189132?v=4" width="42;" alt="partoneplay"/>
</a>
<a href="https://github.com/ryanhex53" title="ryanhex53">
<img src="https://avatars.githubusercontent.com/u/360426?v=4" width="42;" alt="ryanhex53"/>
</a>
<a href="https://github.com/catcto" title="catcto">
<img src="https://avatars.githubusercontent.com/u/5467932?v=4" width="42;" alt="catcto"/>
</a>
<a href="https://github.com/itldg" title="老大哥">
<img src="https://avatars.githubusercontent.com/u/13432299?v=4" width="42;" alt="老大哥"/>
</a> </a>
<a href="https://github.com/wsypower" title="魏"> <a href="https://github.com/wsypower" title="魏">
<img src="https://avatars.githubusercontent.com/u/31298317?v=4" width="42;" alt="魏"/> <img src="https://avatars.githubusercontent.com/u/31298317?v=4" width="42;" alt="魏"/>
</a> </a>
<a href="https://github.com/13812700839" title="花殇"> <a href="https://github.com/itldg" title="老大哥">
<img src="https://avatars.githubusercontent.com/u/58072506?v=4" width="42;" alt="花殇"/> <img src="https://avatars.githubusercontent.com/u/13432299?v=4" width="42;" alt="老大哥"/>
</a> </a>
<a href="https://github.com/dousha0w0" title="dousha0w0"> <a href="https://github.com/catcto" title="小武Alan">
<img src="https://avatars.githubusercontent.com/u/52566311?v=4" width="42;" alt="dousha0w0"/> <img src="https://avatars.githubusercontent.com/u/5467932?v=4" width="42;" alt="小武Alan"/>
</a> </a>
<a href="https://github.com/Brid9e" title="Joe"> <a href="https://github.com/ryanhex53" title="ryanhex53">
<img src="https://avatars.githubusercontent.com/u/85558909?v=4" width="42;" alt="Joe"/> <img src="https://avatars.githubusercontent.com/u/360426?v=4" width="42;" alt="ryanhex53"/>
</a> </a>
<a href="https://github.com/ch3nnn" title="chentong"> <a href="https://github.com/partoneplay" title="partoneplay">
<img src="https://avatars.githubusercontent.com/u/40114564?v=4" width="42;" alt="chentong"/> <img src="https://avatars.githubusercontent.com/u/5189132?v=4" width="42;" alt="partoneplay"/>
</a> </a>
<a href="https://github.com/CharlotteZeng" title="hanchZ"> <a href="https://github.com/pangxiaoli" title="pangxiaoli">
<img src="https://avatars.githubusercontent.com/u/19461184?v=4" width="42;" alt="hanchZ"/> <img src="https://avatars.githubusercontent.com/u/54620953?v=4" width="42;" alt="pangxiaoli"/>
</a> </a>
<a href="https://github.com/ohto-ai" title="Choo"> <a href="https://github.com/mancuoj" title="mancuoj">
<img src="https://avatars.githubusercontent.com/u/46275725?v=4" width="42;" alt="Choo"/> <img src="https://avatars.githubusercontent.com/u/45707684?v=4" width="42;" alt="mancuoj"/>
</a> </a>
<a href="https://github.com/Damao2250" title="Damao"> <a href="https://github.com/1834423612" title="kjch">
<img src="https://avatars.githubusercontent.com/u/19251992?v=4" width="42;" alt="Damao"/> <img src="https://avatars.githubusercontent.com/u/49981661?v=4" width="42;" alt="kjch"/>
</a>
<a href="https://github.com/dasferco" title="Dasferco">
<img src="https://avatars.githubusercontent.com/u/92622404?v=4" width="42;" alt="Dasferco"/>
</a>
<a href="https://github.com/demigodliu" title="DemigodLiu">
<img src="https://avatars.githubusercontent.com/u/30372735?v=4" width="42;" alt="DemigodLiu"/>
</a>
<a href="https://github.com/eeeeeio" title="EEEEE">
<img src="https://avatars.githubusercontent.com/u/20723545?v=4" width="42;" alt="EEEEE"/>
</a>
<a href="https://github.com/sirius-fan" title="Fan">
<img src="https://avatars.githubusercontent.com/u/25720015?v=4" width="42;" alt="Fan"/>
</a>
<a href="https://github.com/Fuku-L" title="Fuku-L">
<img src="https://avatars.githubusercontent.com/u/38535911?v=4" width="42;" alt="Fuku-L"/>
</a>
<a href="https://github.com/gongyeheyu" title="GONGYE Heyu">
<img src="https://avatars.githubusercontent.com/u/85177605?v=4" width="42;" alt="GONGYE Heyu"/>
</a>
<a href="https://github.com/Ding-Kyoma" title="HooinKyoma">
<img src="https://avatars.githubusercontent.com/u/44542198?v=4" width="42;" alt="HooinKyoma"/>
</a>
<a href="https://github.com/ljq" title="Jack Liu">
<img src="https://avatars.githubusercontent.com/u/7278286?v=4" width="42;" alt="Jack Liu"/>
</a>
<a href="https://github.com/jasnzhuang" title="Jason Zhuang">
<img src="https://avatars.githubusercontent.com/u/16612921?v=4" width="42;" alt="Jason Zhuang"/>
</a>
<a href="https://github.com/JetSquirrel" title="JetSquirrel">
<img src="https://avatars.githubusercontent.com/u/20291255?v=4" width="42;" alt="JetSquirrel"/>
</a>
<a href="https://github.com/LightQuanta" title="Light_Quanta">
<img src="https://avatars.githubusercontent.com/u/18213217?v=4" width="42;" alt="Light_Quanta"/>
</a>
<a href="https://github.com/Lihuagreek" title="Lihuagreek">
<img src="https://avatars.githubusercontent.com/u/51040740?v=4" width="42;" alt="Lihuagreek"/>
</a>
<a href="https://github.com/likeshop-github" title="LikeShop技术社区">
<img src="https://avatars.githubusercontent.com/u/77180968?v=4" width="42;" alt="LikeShop技术社区"/>
</a>
<a href="https://github.com/mariuszmichalowski" title="Mariusz Michalowski">
<img src="https://avatars.githubusercontent.com/u/92091891?v=4" width="42;" alt="Mariusz Michalowski"/>
</a>
<a href="https://github.com/malcolmyu" title="Minghao Yu">
<img src="https://avatars.githubusercontent.com/u/3203962?v=4" width="42;" alt="Minghao Yu"/>
</a>
<a href="https://github.com/Moeyuuko" title="Moeyuuko">
<img src="https://avatars.githubusercontent.com/u/14266681?v=4" width="42;" alt="Moeyuuko"/>
</a>
<a href="https://github.com/mo3et" title="Monet Lee">
<img src="https://avatars.githubusercontent.com/u/34803812?v=4" width="42;" alt="Monet Lee"/>
</a>
<a href="https://github.com/HanaNoryu" title="Noryu">
<img src="https://avatars.githubusercontent.com/u/109856546?v=4" width="42;" alt="Noryu"/>
</a>
<a href="https://github.com/Perzch" title="Perzch">
<img src="https://avatars.githubusercontent.com/u/67987641?v=4" width="42;" alt="Perzch"/>
</a>
<a href="https://github.com/PipecraftNet" title="Pipecraft">
<img src="https://avatars.githubusercontent.com/u/88728670?v=4" width="42;" alt="Pipecraft"/>
</a>
<a href="https://github.com/sevenleave" title="Poirot Hercule">
<img src="https://avatars.githubusercontent.com/u/24411140?v=4" width="42;" alt="Poirot Hercule"/>
</a>
<a href="https://github.com/QDelta" title="QDelta">
<img src="https://avatars.githubusercontent.com/u/60222316?v=4" width="42;" alt="QDelta"/>
</a>
<a href="https://github.com/RivailleF" title="RivailleF">
<img src="https://avatars.githubusercontent.com/u/93083015?v=4" width="42;" alt="RivailleF"/>
</a>
<a href="https://github.com/qinxiongzhou" title="Ryan Zhou">
<img src="https://avatars.githubusercontent.com/u/33239096?v=4" width="42;" alt="Ryan Zhou"/>
</a>
<a href="https://github.com/SkylarLeo" title="SkylarLeo">
<img src="https://avatars.githubusercontent.com/u/107191230?v=4" width="42;" alt="SkylarLeo"/>
</a>
<a href="https://github.com/YLee9527" title="Terry Young">
<img src="https://avatars.githubusercontent.com/u/18697332?v=4" width="42;" alt="Terry Young"/>
</a>
<a href="https://github.com/whb1998a" title="WHB">
<img src="https://avatars.githubusercontent.com/u/44045064?v=4" width="42;" alt="WHB"/>
</a>
<a href="https://github.com/BATTLEHAWK00" title="While True: learn()">
<img src="https://avatars.githubusercontent.com/u/45313304?v=4" width="42;" alt="While True: learn()"/>
</a>
<a href="https://github.com/hi-liyan" title="嘉木旅人">
<img src="https://avatars.githubusercontent.com/u/40056492?v=4" width="42;" alt="嘉木旅人"/>
</a>
<a href="https://github.com/Yo-gurts" title="Yogurt">
<img src="https://avatars.githubusercontent.com/u/44612841?v=4" width="42;" alt="Yogurt"/>
</a>
<a href="https://github.com/dfshizhiqiang" title="Zech">
<img src="https://avatars.githubusercontent.com/u/7030019?v=4" width="42;" alt="Zech"/>
</a>
<a href="https://github.com/yikuaibro" title="yikuaibro">
<img src="https://avatars.githubusercontent.com/u/44493045?v=4" width="42;" alt="yikuaibro"/>
</a>
<a href="https://github.com/zhu0629" title="cc">
<img src="https://avatars.githubusercontent.com/u/13188450?v=4" width="42;" alt="cc"/>
</a>
<a href="https://github.com/Leaderzhangyi" title="ZinkCas">
<img src="https://avatars.githubusercontent.com/u/46915666?v=4" width="42;" alt="ZinkCas"/>
</a>
<a href="https://github.com/y52y" title="Zyj">
<img src="https://avatars.githubusercontent.com/u/51304324?v=4" width="42;" alt="Zyj"/>
</a>
<a href="https://github.com/Lmmmmmm-bb" title="_lmmmmmm">
<img src="https://avatars.githubusercontent.com/u/54026110?v=4" width="42;" alt="_lmmmmmm"/>
</a>
<a href="https://github.com/chyok" title="chyok">
<img src="https://avatars.githubusercontent.com/u/32629225?v=4" width="42;" alt="chyok"/>
</a>
<a href="https://github.com/gaoxiaoduan" title="CoderDuan">
<img src="https://avatars.githubusercontent.com/u/69953511?v=4" width="42;" alt="CoderDuan"/>
</a>
<a href="https://github.com/cool9203" title="cool9203">
<img src="https://avatars.githubusercontent.com/u/29609607?v=4" width="42;" alt="cool9203"/>
</a>
<a href="https://github.com/fakevn" title="fakevn">
<img src="https://avatars.githubusercontent.com/u/11464386?v=4" width="42;" alt="fakevn"/>
</a>
<a href="https://github.com/fjqz177" title="fjqz177">
<img src="https://avatars.githubusercontent.com/u/83070583?v=4" width="42;" alt="fjqz177"/>
</a>
<a href="https://github.com/gi-b716" title="gi-b716">
<img src="https://avatars.githubusercontent.com/u/78394473?v=4" width="42;" alt="gi-b716"/>
</a>
<a href="https://github.com/godotc" title="godot42">
<img src="https://avatars.githubusercontent.com/u/79260851?v=4" width="42;" alt="godot42"/>
</a> </a>
<a href="https://github.com/greyhao" title="greyhao"> <a href="https://github.com/greyhao" title="greyhao">
<img src="https://avatars.githubusercontent.com/u/107107440?v=4" width="42;" alt="greyhao"/> <img src="https://avatars.githubusercontent.com/u/107107440?v=4" width="42;" alt="greyhao"/>
</a> </a>
<a href="https://github.com/sunny0826" title="Xudong Guo"> <a href="https://github.com/XYZscratcher" title="XYZ">
<img src="https://avatars.githubusercontent.com/u/24563928?v=4" width="42;" alt="Xudong Guo"/> <img src="https://avatars.githubusercontent.com/u/108533817?v=4" width="42;" alt="XYZ"/>
</a> </a>
<a href="https://github.com/hua03" title="hua03"> <a href="https://github.com/ljq" title="Jack Liu">
<img src="https://avatars.githubusercontent.com/u/19561959?v=4" width="42;" alt="hua03"/> <img src="https://avatars.githubusercontent.com/u/7278286?v=4" width="42;" alt="Jack Liu"/>
</a>
<a href="https://github.com/dadatom" title="Da Da">
<img src="https://avatars.githubusercontent.com/u/33886943?v=4" width="42;" alt="Da Da"/>
</a>
<a href="https://github.com/webeautiful" title="Albert">
<img src="https://avatars.githubusercontent.com/u/3364316?v=4" width="42;" alt="Albert"/>
</a> </a>
<a href="https://github.com/yanxuplay" title="hupilan"> <a href="https://github.com/yanxuplay" title="hupilan">
<img src="https://avatars.githubusercontent.com/u/69749541?v=4" width="42;" alt="hupilan"/> <img src="https://avatars.githubusercontent.com/u/69749541?v=4" width="42;" alt="hupilan"/>
@ -503,14 +359,17 @@ Quick Reference
<a href="https://github.com/joyfully-W" title="joyfully-W"> <a href="https://github.com/joyfully-W" title="joyfully-W">
<img src="https://avatars.githubusercontent.com/u/32212924?v=4" width="42;" alt="joyfully-W"/> <img src="https://avatars.githubusercontent.com/u/32212924?v=4" width="42;" alt="joyfully-W"/>
</a> </a>
<a href="https://github.com/jussker" title="jussker">
<img src="https://avatars.githubusercontent.com/u/33953356?v=4" width="42;" alt="jussker"/>
</a>
<a href="https://github.com/k983551019" title="k983551019"> <a href="https://github.com/k983551019" title="k983551019">
<img src="https://avatars.githubusercontent.com/u/48147837?v=4" width="42;" alt="k983551019"/> <img src="https://avatars.githubusercontent.com/u/48147837?v=4" width="42;" alt="k983551019"/>
</a> </a>
<a href="https://github.com/kdxcxs" title="kdxcxs"> <a href="https://github.com/kdxcxs" title="kdxcxs">
<img src="https://avatars.githubusercontent.com/u/18746192?v=4" width="42;" alt="kdxcxs"/> <img src="https://avatars.githubusercontent.com/u/18746192?v=4" width="42;" alt="kdxcxs"/>
</a> </a>
<a href="https://github.com/genius-kim" title="kim"> <a href="https://github.com/genius-kim" title="Kim同学">
<img src="https://avatars.githubusercontent.com/u/119488561?v=4" width="42;" alt="kim"/> <img src="https://avatars.githubusercontent.com/u/119488561?v=4" width="42;" alt="Kim同学"/>
</a> </a>
<a href="https://github.com/kubeme" title="kubernetes for me"> <a href="https://github.com/kubeme" title="kubernetes for me">
<img src="https://avatars.githubusercontent.com/u/16346220?v=4" width="42;" alt="kubernetes for me"/> <img src="https://avatars.githubusercontent.com/u/16346220?v=4" width="42;" alt="kubernetes for me"/>
@ -518,71 +377,236 @@ Quick Reference
<a href="https://github.com/larry-xue" title="larry"> <a href="https://github.com/larry-xue" title="larry">
<img src="https://avatars.githubusercontent.com/u/48818060?v=4" width="42;" alt="larry"/> <img src="https://avatars.githubusercontent.com/u/48818060?v=4" width="42;" alt="larry"/>
</a> </a>
<a href="https://github.com/liliangrong777" title="liliangrong777"> <a href="https://github.com/hua03" title="hua03">
<img src="https://avatars.githubusercontent.com/u/58727146?v=4" width="42;" alt="liliangrong777"/> <img src="https://avatars.githubusercontent.com/u/19561959?v=4" width="42;" alt="hua03"/>
</a> </a>
<a href="https://github.com/lykjjj" title="lykjjj"> <a href="https://github.com/gzttcydxx" title="gzttcydxx">
<img src="https://avatars.githubusercontent.com/u/58510058?v=4" width="42;" alt="lykjjj"/> <img src="https://avatars.githubusercontent.com/u/50025185?v=4" width="42;" alt="gzttcydxx"/>
</a> </a>
<a href="https://github.com/miclon-dev" title="miclon-dev"> <a href="https://github.com/sunny0826" title="Xudong Guo">
<img src="https://avatars.githubusercontent.com/u/111753685?v=4" width="42;" alt="miclon-dev"/> <img src="https://avatars.githubusercontent.com/u/24563928?v=4" width="42;" alt="Xudong Guo"/>
</a> </a>
<a href="https://github.com/onewesong" title="onewesong"> <a href="https://github.com/godotc" title="godot42">
<img src="https://avatars.githubusercontent.com/u/17920822?v=4" width="42;" alt="onewesong"/> <img src="https://avatars.githubusercontent.com/u/79260851?v=4" width="42;" alt="godot42"/>
</a> </a>
<a href="https://github.com/phygerr" title="phygerr"> <a href="https://github.com/gi-b716" title="gi-b716">
<img src="https://avatars.githubusercontent.com/u/42068889?v=4" width="42;" alt="phygerr"/> <img src="https://avatars.githubusercontent.com/u/78394473?v=4" width="42;" alt="gi-b716"/>
</a> </a>
<a href="https://github.com/Mowmowj" title="nexo"> <a href="https://github.com/fjqz177" title="fjqz177">
<img src="https://avatars.githubusercontent.com/u/24759562?v=4" width="42;" alt="nexo"/> <img src="https://avatars.githubusercontent.com/u/83070583?v=4" width="42;" alt="fjqz177"/>
</a> </a>
<a href="https://github.com/swift-fs" title="swift"> <a href="https://github.com/fakevn" title="fakevn">
<img src="https://avatars.githubusercontent.com/u/77133741?v=4" width="42;" alt="swift"/> <img src="https://avatars.githubusercontent.com/u/11464386?v=4" width="42;" alt="fakevn"/>
</a> </a>
<a href="https://github.com/wannima66" title="tmen"> <a href="https://github.com/cool9203" title="cool9203">
<img src="https://avatars.githubusercontent.com/u/26410255?v=4" width="42;" alt="tmen"/> <img src="https://avatars.githubusercontent.com/u/29609607?v=4" width="42;" alt="cool9203"/>
</a> </a>
<a href="https://github.com/wjjwkwindy" title="Hudson Alen"> <a href="https://github.com/gaoxiaoduan" title="CoderDuan">
<img src="https://avatars.githubusercontent.com/u/9508591?v=4" width="42;" alt="Hudson Alen"/> <img src="https://avatars.githubusercontent.com/u/69953511?v=4" width="42;" alt="CoderDuan"/>
</a> </a>
<a href="https://github.com/xing133" title="xing133"> <a href="https://github.com/chyok" title="chyok">
<img src="https://avatars.githubusercontent.com/u/5336490?v=4" width="42;" alt="xing133"/> <img src="https://avatars.githubusercontent.com/u/32629225?v=4" width="42;" alt="chyok"/>
</a> </a>
<a href="https://github.com/hiyms" title="yms"> <a href="https://github.com/zlfyuan" title="bgbgPang">
<img src="https://avatars.githubusercontent.com/u/84654050?v=4" width="42;" alt="yms"/> <img src="https://avatars.githubusercontent.com/u/19658018?v=4" width="42;" alt="bgbgPang"/>
</a> </a>
<a href="https://github.com/zhouhw0306" title="zhouhw0306"> <a href="https://github.com/Zeng-qh" title="都一样">
<img src="https://avatars.githubusercontent.com/u/82752681?v=4" width="42;" alt="zhouhw0306"/> <img src="https://avatars.githubusercontent.com/u/40046415?v=4" width="42;" alt="都一样"/>
</a>
<a href="https://github.com/zxx457" title="zxx457">
<img src="https://avatars.githubusercontent.com/u/114141362?v=4" width="42;" alt="zxx457"/>
</a>
<a href="https://github.com/lvzhenbo" title="吕振波">
<img src="https://avatars.githubusercontent.com/u/32427677?v=4" width="42;" alt="吕振波"/>
</a>
<a href="https://github.com/LuckyJie12" title="夜未央">
<img src="https://avatars.githubusercontent.com/u/102901105?v=4" width="42;" alt="夜未央"/>
</a>
<a href="https://github.com/ZIDOUZI" title="ZIDOUZI">
<img src="https://avatars.githubusercontent.com/u/53157536?v=4" width="42;" alt="ZIDOUZI"/>
</a>
<a href="https://github.com/lisheng741" title="芦荟柚子茶">
<img src="https://avatars.githubusercontent.com/u/53617305?v=4" width="42;" alt="芦荟柚子茶"/>
</a>
<a href="https://github.com/HuaChan233" title="花开花落">
<img src="https://avatars.githubusercontent.com/u/75212820?v=4" width="42;" alt="花开花落"/>
</a>
<a href="https://github.com/1250422131" title="萌新杰少">
<img src="https://avatars.githubusercontent.com/u/52126790?v=4" width="42;" alt="萌新杰少"/>
</a>
<a href="https://github.com/qwxingzhe" title="行者">
<img src="https://avatars.githubusercontent.com/u/7071651?v=4" width="42;" alt="行者"/>
</a> </a>
<a href="https://github.com/binscor" title="Zheng Nai Bin"> <a href="https://github.com/binscor" title="Zheng Nai Bin">
<img src="https://avatars.githubusercontent.com/u/37325821?v=4" width="42;" alt="Zheng Nai Bin"/> <img src="https://avatars.githubusercontent.com/u/37325821?v=4" width="42;" alt="Zheng Nai Bin"/>
</a> </a>
<a href="https://github.com/Zeng-qh" title="都一样"> <a href="https://github.com/qwxingzhe" title="行者">
<img src="https://avatars.githubusercontent.com/u/40046415?v=4" width="42;" alt="都一样"/> <img src="https://avatars.githubusercontent.com/u/7071651?v=4" width="42;" alt="行者"/>
</a>
<a href="https://github.com/HuaChan233" title="花开花落">
<img src="https://avatars.githubusercontent.com/u/75212820?v=4" width="42;" alt="花开花落"/>
</a>
<a href="https://github.com/lisheng741" title="芦荟柚子茶">
<img src="https://avatars.githubusercontent.com/u/53617305?v=4" width="42;" alt="芦荟柚子茶"/>
</a>
<a href="https://github.com/ZIDOUZI" title="ZIDOUZI">
<img src="https://avatars.githubusercontent.com/u/53157536?v=4" width="42;" alt="ZIDOUZI"/>
</a>
<a href="https://github.com/LuckyJie12" title="夜未央">
<img src="https://avatars.githubusercontent.com/u/102901105?v=4" width="42;" alt="夜未央"/>
</a>
<a href="https://github.com/lvzhenbo" title="吕振波">
<img src="https://avatars.githubusercontent.com/u/32427677?v=4" width="42;" alt="吕振波"/>
</a>
<a href="https://github.com/zxx457" title="zxx457">
<img src="https://avatars.githubusercontent.com/u/114141362?v=4" width="42;" alt="zxx457"/>
</a>
<a href="https://github.com/zhouhw0306" title="zhouhw0306">
<img src="https://avatars.githubusercontent.com/u/82752681?v=4" width="42;" alt="zhouhw0306"/>
</a>
<a href="https://github.com/hiyms" title="yms">
<img src="https://avatars.githubusercontent.com/u/84654050?v=4" width="42;" alt="yms"/>
</a>
<a href="https://github.com/xing133" title="xing133">
<img src="https://avatars.githubusercontent.com/u/5336490?v=4" width="42;" alt="xing133"/>
</a>
<a href="https://github.com/wjjwkwindy" title="Hudson Alen">
<img src="https://avatars.githubusercontent.com/u/9508591?v=4" width="42;" alt="Hudson Alen"/>
</a>
<a href="https://github.com/wannima66" title="tmen">
<img src="https://avatars.githubusercontent.com/u/26410255?v=4" width="42;" alt="tmen"/>
</a>
<a href="https://github.com/swift-fs" title="swift">
<img src="https://avatars.githubusercontent.com/u/77133741?v=4" width="42;" alt="swift"/>
</a>
<a href="https://github.com/suyangzuo" title="suyangzuo">
<img src="https://avatars.githubusercontent.com/u/50766353?v=4" width="42;" alt="suyangzuo"/>
</a>
<a href="https://github.com/Mowmowj" title="nexo">
<img src="https://avatars.githubusercontent.com/u/24759562?v=4" width="42;" alt="nexo"/>
</a>
<a href="https://github.com/phygerr" title="phygerr">
<img src="https://avatars.githubusercontent.com/u/42068889?v=4" width="42;" alt="phygerr"/>
</a>
<a href="https://github.com/onewesong" title="onewesong">
<img src="https://avatars.githubusercontent.com/u/17920822?v=4" width="42;" alt="onewesong"/>
</a>
<a href="https://github.com/miclon-dev" title="miclon-dev">
<img src="https://avatars.githubusercontent.com/u/111753685?v=4" width="42;" alt="miclon-dev"/>
</a>
<a href="https://github.com/lykjjj" title="lykjjj">
<img src="https://avatars.githubusercontent.com/u/58510058?v=4" width="42;" alt="lykjjj"/>
</a>
<a href="https://github.com/liliangrong777" title="liliangrong777">
<img src="https://avatars.githubusercontent.com/u/58727146?v=4" width="42;" alt="liliangrong777"/>
</a>
<a href="https://github.com/Moeyuuko" title="Moeyuuko">
<img src="https://avatars.githubusercontent.com/u/14266681?v=4" width="42;" alt="Moeyuuko"/>
</a>
<a href="https://github.com/malcolmyu" title="Minghao Yu">
<img src="https://avatars.githubusercontent.com/u/3203962?v=4" width="42;" alt="Minghao Yu"/>
</a>
<a href="https://github.com/mariuszmichalowski" title="Mariusz Michalowski">
<img src="https://avatars.githubusercontent.com/u/92091891?v=4" width="42;" alt="Mariusz Michalowski"/>
</a>
<a href="https://github.com/likeshop-github" title="LikeShop技术社区">
<img src="https://avatars.githubusercontent.com/u/77180968?v=4" width="42;" alt="LikeShop技术社区"/>
</a>
<a href="https://github.com/Lihuagreek" title="Lihuagreek">
<img src="https://avatars.githubusercontent.com/u/51040740?v=4" width="42;" alt="Lihuagreek"/>
</a>
<a href="https://github.com/LightQuanta" title="Light_Quanta">
<img src="https://avatars.githubusercontent.com/u/18213217?v=4" width="42;" alt="Light_Quanta"/>
</a>
<a href="https://github.com/JetSquirrel" title="JetSquirrel">
<img src="https://avatars.githubusercontent.com/u/20291255?v=4" width="42;" alt="JetSquirrel"/>
</a>
<a href="https://github.com/jasnzhuang" title="Jason Zhuang">
<img src="https://avatars.githubusercontent.com/u/16612921?v=4" width="42;" alt="Jason Zhuang"/>
</a>
<a href="https://github.com/Ding-Kyoma" title="HooinKyoma">
<img src="https://avatars.githubusercontent.com/u/44542198?v=4" width="42;" alt="HooinKyoma"/>
</a>
<a href="https://github.com/gongyeheyu" title="GONGYE Heyu">
<img src="https://avatars.githubusercontent.com/u/85177605?v=4" width="42;" alt="GONGYE Heyu"/>
</a>
<a href="https://github.com/Fuku-L" title="Fuku-L">
<img src="https://avatars.githubusercontent.com/u/38535911?v=4" width="42;" alt="Fuku-L"/>
</a>
<a href="https://github.com/sirius-fan" title="Fan">
<img src="https://avatars.githubusercontent.com/u/25720015?v=4" width="42;" alt="Fan"/>
</a>
<a href="https://github.com/eeeeeio" title="EEEEE">
<img src="https://avatars.githubusercontent.com/u/20723545?v=4" width="42;" alt="EEEEE"/>
</a>
<a href="https://github.com/demigodliu" title="DemigodLiu">
<img src="https://avatars.githubusercontent.com/u/30372735?v=4" width="42;" alt="DemigodLiu"/>
</a>
<a href="https://github.com/dasferco" title="Dasferco">
<img src="https://avatars.githubusercontent.com/u/92622404?v=4" width="42;" alt="Dasferco"/>
</a>
<a href="https://github.com/Damao2250" title="Damao">
<img src="https://avatars.githubusercontent.com/u/19251992?v=4" width="42;" alt="Damao"/>
</a>
<a href="https://github.com/ohto-ai" title="Choo">
<img src="https://avatars.githubusercontent.com/u/46275725?v=4" width="42;" alt="Choo"/>
</a>
<a href="https://github.com/CharlotteZeng" title="hanchZ">
<img src="https://avatars.githubusercontent.com/u/19461184?v=4" width="42;" alt="hanchZ"/>
</a>
<a href="https://github.com/ch3nnn" title="chentong">
<img src="https://avatars.githubusercontent.com/u/40114564?v=4" width="42;" alt="chentong"/>
</a>
<a href="https://github.com/Brid9e" title="Joe">
<img src="https://avatars.githubusercontent.com/u/85558909?v=4" width="42;" alt="Joe"/>
</a>
<a href="https://github.com/dousha0w0" title="dousha0w0">
<img src="https://avatars.githubusercontent.com/u/52566311?v=4" width="42;" alt="dousha0w0"/>
</a>
<a href="https://github.com/13812700839" title="花殇">
<img src="https://avatars.githubusercontent.com/u/58072506?v=4" width="42;" alt="花殇"/>
</a>
<a href="https://github.com/Lmmmmmm-bb" title="_lmmmmmm">
<img src="https://avatars.githubusercontent.com/u/54026110?v=4" width="42;" alt="_lmmmmmm"/>
</a>
<a href="https://github.com/y52y" title="Zyj">
<img src="https://avatars.githubusercontent.com/u/51304324?v=4" width="42;" alt="Zyj"/>
</a>
<a href="https://github.com/Leaderzhangyi" title="ZinkCas">
<img src="https://avatars.githubusercontent.com/u/46915666?v=4" width="42;" alt="ZinkCas"/>
</a>
<a href="https://github.com/zhu0629" title="zhucong">
<img src="https://avatars.githubusercontent.com/u/13188450?v=4" width="42;" alt="zhucong"/>
</a>
<a href="https://github.com/yikuaibro" title="yikuaibro">
<img src="https://avatars.githubusercontent.com/u/44493045?v=4" width="42;" alt="yikuaibro"/>
</a>
<a href="https://github.com/dfshizhiqiang" title="Zech">
<img src="https://avatars.githubusercontent.com/u/7030019?v=4" width="42;" alt="Zech"/>
</a>
<a href="https://github.com/Yo-gurts" title="Yogurt">
<img src="https://avatars.githubusercontent.com/u/44612841?v=4" width="42;" alt="Yogurt"/>
</a>
<a href="https://github.com/hi-liyan" title="李李李">
<img src="https://avatars.githubusercontent.com/u/40056492?v=4" width="42;" alt="李李李"/>
</a>
<a href="https://github.com/BATTLEHAWK00" title="While True: learn()">
<img src="https://avatars.githubusercontent.com/u/45313304?v=4" width="42;" alt="While True: learn()"/>
</a>
<a href="https://github.com/whb1998a" title="WHB">
<img src="https://avatars.githubusercontent.com/u/44045064?v=4" width="42;" alt="WHB"/>
</a>
<a href="https://github.com/YLee9527" title="Terry Young">
<img src="https://avatars.githubusercontent.com/u/18697332?v=4" width="42;" alt="Terry Young"/>
</a>
<a href="https://github.com/Xiwin" title="Xiwin">
<img src="https://avatars.githubusercontent.com/u/107191230?v=4" width="42;" alt="Xiwin"/>
</a>
<a href="https://github.com/qinxiongzhou" title="Ryan Zhou">
<img src="https://avatars.githubusercontent.com/u/33239096?v=4" width="42;" alt="Ryan Zhou"/>
</a>
<a href="https://github.com/RivailleF" title="RivailleF">
<img src="https://avatars.githubusercontent.com/u/93083015?v=4" width="42;" alt="RivailleF"/>
</a>
<a href="https://github.com/QDelta" title="QDelta">
<img src="https://avatars.githubusercontent.com/u/60222316?v=4" width="42;" alt="QDelta"/>
</a>
<a href="https://github.com/sevenleave" title="Poirot Hercule">
<img src="https://avatars.githubusercontent.com/u/24411140?v=4" width="42;" alt="Poirot Hercule"/>
</a>
<a href="https://github.com/PipecraftNet" title="Pipecraft">
<img src="https://avatars.githubusercontent.com/u/88728670?v=4" width="42;" alt="Pipecraft"/>
</a>
<a href="https://github.com/Perzch" title="Perzch">
<img src="https://avatars.githubusercontent.com/u/67987641?v=4" width="42;" alt="Perzch"/>
</a>
<a href="https://github.com/PILIHU2022" title="PILIHU2022">
<img src="https://avatars.githubusercontent.com/u/100511118?v=4" width="42;" alt="PILIHU2022"/>
</a>
<a href="https://github.com/HanaNoryu" title="Noryu">
<img src="https://avatars.githubusercontent.com/u/109856546?v=4" width="42;" alt="Noryu"/>
</a>
<a href="https://github.com/NianwenDan" title="NianwenDan">
<img src="https://avatars.githubusercontent.com/u/74407127?v=4" width="42;" alt="NianwenDan"/>
</a>
<a href="https://github.com/mo3et" title="Monet Lee">
<img src="https://avatars.githubusercontent.com/u/34803812?v=4" width="42;" alt="Monet Lee"/>
</a><!--GAMFC-END--> </a><!--GAMFC-END-->
[贡献者](https://github.com/jaywcjlove/reference/graphs/contributors)列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 根据提交次数的先后顺序自动生成 [贡献者](https://github.com/jaywcjlove/reference/graphs/contributors)列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 根据提交次数的先后顺序自动生成
@ -593,6 +617,7 @@ Quick Reference
由于中国国内访问,时常打不开,你可以访问下面镜像网站(国内打不开的不再收录)。推荐自己的[镜像网站](https://github.com/jaywcjlove/reference/discussions/206#discussion-4625735) 由于中国国内访问,时常打不开,你可以访问下面镜像网站(国内打不开的不再收录)。推荐自己的[镜像网站](https://github.com/jaywcjlove/reference/discussions/206#discussion-4625735)
[dev.bi](https://dev.bi)<!--rehype:target=_blank&class=contributing&data-info=👆每天自动同步-->
[server.wiki](https://ref.server.wiki)<!--rehype:target=_blank--> [server.wiki](https://ref.server.wiki)<!--rehype:target=_blank-->
[nihaosi.com](https://refs.nihaosi.com)<!--rehype:target=_blank--> [nihaosi.com](https://refs.nihaosi.com)<!--rehype:target=_blank-->
[quickref.cn](https://quickref.cn)<!--rehype:target=_blank--> [quickref.cn](https://quickref.cn)<!--rehype:target=_blank-->
@ -607,6 +632,7 @@ Quick Reference
[quickref.binscor.top](https://quickref.binscor.top)<!--rehype:target=_blank&data-info=👆每天自动同步--> [quickref.binscor.top](https://quickref.binscor.top)<!--rehype:target=_blank&data-info=👆每天自动同步-->
[srebro.cn](https://ref.srebro.cn)<!--rehype:target=_blank&data-info=👆每天自动同步--> [srebro.cn](https://ref.srebro.cn)<!--rehype:target=_blank&data-info=👆每天自动同步-->
[haah.net](https://ref.haah.net)<!--rehype:target=_blank&data-info=👆每天自动同步--> [haah.net](https://ref.haah.net)<!--rehype:target=_blank&data-info=👆每天自动同步-->
[xiechengqi.top](https://ref.xiechengqi.top)<!--rehype:target=_blank&data-info=👆每天自动同步-->
[laoleng.vip](http://bbs.laoleng.vip/reference/)<!--rehype:target=_blank--> [laoleng.vip](http://bbs.laoleng.vip/reference/)<!--rehype:target=_blank-->
[dbyun.net](https://www.dbyun.net/reference/index.html)<!--rehype:target=_blank--> [dbyun.net](https://www.dbyun.net/reference/index.html)<!--rehype:target=_blank-->
[if010.com](https://quickref.if010.com/)<!--rehype:target=_blank--> [if010.com](https://quickref.if010.com/)<!--rehype:target=_blank-->
@ -645,6 +671,18 @@ Quick Reference
[chenchen.site](https://img.chenchen.site/reference/)<!--rehype:target=_blank--> [chenchen.site](https://img.chenchen.site/reference/)<!--rehype:target=_blank-->
[jgeek.cn](http://reference.jgeek.cn/)<!--rehype:target=_blank--> [jgeek.cn](http://reference.jgeek.cn/)<!--rehype:target=_blank-->
[itzcy.com](https://reference.itzcy.com/)<!--rehype:target=_blank--> [itzcy.com](https://reference.itzcy.com/)<!--rehype:target=_blank-->
[fifo.site](https://ref.fifo.site)<!--rehype:target=_blank-->
[gaojs.com.cn](https://study.gaojs.com.cn)<!--rehype:target=_blank-->
[15926.tech](https://ref.15926.tech)<!--rehype:target=_blank-->
[jeffjade.com](https://codehelp.jeffjade.com)<!--rehype:target=_blank-->
[okhk.net](https://ref.okhk.net)<!--rehype:target=_blank-->
[wdft.com](https://ref.wdft.com)<!--rehype:target=_blank&class=contributing&data-info=👆每天自动同步-->
[xuyiyang.vip](https://reference.xuyiyang.vip/)<!--rehype:target=_blank-->
[zsccodelnc.cn](https://zsccodelnc.cn/coderef/)<!--rehype:target=_blank-->
[chanlun.pro](https://ref.chanlun.pro)<!--rehype:target=_blank-->
[likui.info](https://r.likui.info)<!--rehype:target=_blank-->
[ruiange.work](https://code.ruiange.work/)<!--rehype:target=_blank-->
[denganliang.com](https://ref.denganliang.com)<!--rehype:target=_blank-->
<!--rehype:class=home-card home-links--> <!--rehype:class=home-card home-links-->
如果你有资源,可以很方便[部署 web 版](https://github.com/jaywcjlove/reference/issues/102#issue-1451649637),这非常简单,只需要克隆 [gh-pages](https://github.com/jaywcjlove/reference/tree/gh-pages) 分支代码到你的静态服务就可以了,还可以使用 [docker](https://hub.docker.com/r/wcjiang/reference) 快捷部署 web 版。 如果你有资源,可以很方便[部署 web 版](https://github.com/jaywcjlove/reference/issues/102#issue-1451649637),这非常简单,只需要克隆 [gh-pages](https://github.com/jaywcjlove/reference/tree/gh-pages) 分支代码到你的静态服务就可以了,还可以使用 [docker](https://hub.docker.com/r/wcjiang/reference) 快捷部署 web 版。

1
assets/chown.svg Normal file
View File

@ -0,0 +1 @@
<svg viewBox="0 0 1024 1024" version="1.1" fill="currentColor" xmlns="http://www.w3.org/2000/svg" height="1em" width="1em"><path d="M912.9 130.6c-26.1 4.5-52.8 6.9-80.2 6.9-115.4 0-221.1-41.9-302.6-111.2-10.6-9-26.2-9-36.8 0-81.5 69.4-187.2 111.2-302.6 111.2-27 0-53.5-2.3-79.2-6.7-17.2-2.9-32.9 10.4-33 27.9-0.2 109.1-0.4 238.1-0.4 242.5 0 471 394.5 592.7 431 603 1.8 0.5 3.6 0.5 5.4 0C550.9 994 943 873 945.5 405.7l0.4-247c0-17.6-15.8-31.1-33-28.1zM546 568.9v154.5c0 18.8-15.2 34-34 34s-34-15.2-34-34V568.9c-68.2-15.5-119.1-76.4-119.1-149.3 0-84.5 68.5-153.1 153.1-153.1S665.1 335 665.1 419.6c0 72.9-50.9 133.9-119.1 149.3z"></path></svg>

After

Width:  |  Height:  |  Size: 640 B

View File

@ -0,0 +1,4 @@
<svg width="1em" height="1em" viewBox="0 0 600 528" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
<path d="M300.05 526.091C129.331 526.091 5.42623 417.044 0.748474 385.796V312.898C3.92935 289.397 26.0832 249.805 60.1747 235.622C60.6612 233.002 61.0728 230.27 61.5219 227.464C62.6071 220.615 63.7672 213.094 66.237 204.561C58.7152 185.551 56.7318 163.996 56.7318 142.59C56.7318 110.033 61.5219 76.3908 82.6653 49.6341C104.333 22.2037 138.574 7.57172 184.603 2.4449C229.734 -2.56966 269.252 3.71724 294.773 31.0728C296.645 33.0561 298.366 35.1143 299.975 37.2474C301.622 35.1143 303.493 33.0561 305.326 31.0728C330.848 3.71724 370.366 -2.56966 415.497 2.4449C461.526 7.57172 495.767 22.2037 517.435 49.6341C538.615 76.3908 543.368 110.033 543.368 142.59C543.368 163.996 541.385 185.551 533.863 204.561C536.333 213.094 537.53 220.615 538.578 227.464C539.027 230.308 539.476 233.002 539.963 235.622C574.541 250.029 596.919 290.669 599.501 314.021V384.075C599.501 412.74 474.1 526.091 300.05 526.091ZM300.05 470.52C385.372 470.52 471.593 428.981 487.235 416.894V257.663L486.374 253.322C468.037 261.181 446.146 264.212 421.746 264.212C378.861 264.212 344.694 251.975 320.333 227.127C312.303 218.871 305.498 209.508 300.125 199.322C294.697 209.512 287.842 218.875 279.767 227.127C255.443 251.975 221.277 264.212 178.353 264.212C153.954 264.212 132.1 261.181 113.726 253.322L112.865 257.663V416.894C128.545 428.981 214.728 470.52 300.05 470.52ZM253.796 69.3555C246.574 61.6466 229.958 53.9002 190.852 58.2412C152.719 62.4698 135.505 73.3597 126.748 84.4366C117.505 96.1123 112.94 113.963 112.94 142.59C112.94 172.266 117.767 186.412 124.466 193.896C130.528 200.669 143.888 208.079 178.428 208.079C210.349 208.079 228.536 199.285 239.726 187.871C251.514 175.821 259.447 156.923 262.815 129.755C267.193 94.7651 261.43 77.5509 253.796 69.3555ZM409.285 58.2412C370.216 53.9002 353.601 61.6466 346.378 69.3555C338.744 77.5509 332.944 94.7651 337.322 129.755C340.728 156.923 348.661 175.821 360.449 187.871C371.638 199.285 389.788 208.079 421.746 208.079C456.25 208.079 469.647 200.669 475.709 193.896C482.408 186.412 487.235 172.266 487.235 142.59C487.235 113.963 482.632 96.1123 473.389 84.4366C464.669 73.3597 447.455 62.4698 409.285 58.2412Z"/>
<path d="M234.636 301.634C242.08 301.634 249.219 304.591 254.482 309.855C259.746 315.118 262.703 322.257 262.703 329.701V385.871C262.703 393.315 259.746 400.454 254.482 405.717C249.219 410.981 242.08 413.938 234.636 413.938C227.193 413.938 220.054 410.981 214.79 405.717C209.527 400.454 206.57 393.315 206.57 385.871V329.701C206.57 322.257 209.527 315.118 214.79 309.855C220.054 304.591 227.193 301.634 234.636 301.634ZM393.68 329.701V385.871C393.68 393.315 390.723 400.454 385.459 405.717C380.196 410.981 373.057 413.938 365.613 413.938C358.17 413.938 351.031 410.981 345.767 405.717C340.504 400.454 337.547 393.315 337.547 385.871V329.701C337.547 322.257 340.504 315.118 345.767 309.855C351.031 304.591 358.17 301.634 365.613 301.634C373.057 301.634 380.196 304.591 385.459 309.855C390.723 315.118 393.68 322.257 393.68 329.701Z"/>
</svg>

After

Width:  |  Height:  |  Size: 3.0 KiB

149
docs/chown.md Normal file
View File

@ -0,0 +1,149 @@
Chown 备忘清单
===
这份快速参考备忘单提供了改变文件或目录的所有者的简要概述,以及 chown 命令的操作
入门
--------
### 介绍
Linux/Unix 系统中的一个命令,全称为 `change owner`,用于改变文件或目录的所有者
```shell
chown [选项] [所有者][:[]] 文件或目录名
```
命令可以更改某个文件或目录的属主owner也可以同时更改其属组group
#### 示例
```shell
$ chown :groupname file1.txt
$ chown -R username:groupname *
$ chown $USER file.txt
```
`注意` 只有超级用户(root)才有权限改变文件或目录的所有者
### 选项
- `-c` : 显示更改的部分的信息
- `-f` : 忽略错误信息
- `-h` :修复符号链接
- `-v` : 显示详细的处理信息
- `-R` : 处理指定目录以及其子目录下的所有文件
- `--help` : 显示辅助说明
- `--version` : 显示版本
示例
--------
### 更改文件所有者
```shell
$ chown root /var/run/httpd.pid
```
`/var/run/httpd.pid` 的所有者设为 `root`
#### 仅更改所有者
```bash
$ chown new_owner file.txt
```
### 递归更改目录及其内容的所有者
<!--rehype:wrap-class=row-span-2-->
```shell
chown -R new_owner:new_group directory/
```
将文件夹 `directory` 的拥有者设为 `new_owner` ,群体的使用者设为 `new_group`
```shell
$ chown username:groupname file1.txt
```
将文件 file1.txt 的拥有者设为 `username` ,群体的使用者设为 `groupname`
```shell
$ chown -R username:groupname *
```
将当前目录以及子目录的所有文件的拥有者设为 `username` ,群体的使用者设为 `groupname`
### 更改所有者为当前用户
```bash
$ chown $USER file.txt
```
递归更改目录及其内容的所有者为当前用户
```bash
sudo chown -R $USER directory/
```
### 递归并且不显示错误信息
```bash
chown -R -f new_owner:new_group directory/
```
更改目录及其内容的所有者和组为 `alice`
```bash
chown -R alice: directory/
```
### 仅更改组
```shell
$ chown :groupname file1.txt
```
不修改文件 `file1.txt` 的拥有者,将文件使用群体改为 `groupname`
### 变更符号链接的所有者
<!--rehype:wrap-class=row-span-2-->
```bash
$ chown -h new_owner:new_group symlink
```
变更符号链接的所有者而不是链接指向的文件
```bash
$ chown -h manager symlink
```
更改符号链接的所有者为"manager"
### 更改所有者为根用户
<!--rehype:wrap-class=row-span-2-->
```bash
sudo chown root:root file.txt
```
#### 递归更改所有者为当前用户
```bash
sudo chown -R $USER directory/
# 更改目录及其内容的所有者和组为"alice":
chown -R alice: directory/
```
### 将文件所有者更改为其他用户,但保留组
```bash
chown new_owner file.txt
```
### 将文件所有者更改为其他用户,同时更改组
```bash
chown new_owner:new_group file.txt
```

View File

@ -289,6 +289,17 @@ Console.WriteLine(multiLine); // => Content begin "Hello World!" /\n<>"" end.
### 字符串操作 ### 字符串操作
#### 字符串判空
```cs
string name; //空引用
string gender = ""; //空值
// 使用 string.IsNullOrEmpty(字符串) 方法,返回 bool 型
Console.WriteLine(string.IsNullOrEmpty(name)); //输出 true
Console.WriteLine(string.IsNullOrEmpty(gender)); // 输出 true
```
#### 字符串分割 #### 字符串分割
```cs ```cs

View File

@ -320,7 +320,7 @@ int sum = add(2,3); // 回报5
int totalSum = add(2, add(2,3)); // 返回7 int totalSum = add(2, add(2,3)); // 返回7
``` ```
### 箭头语法 (=>) ### 箭头函数 (=>)
```dart ```dart
// 只包含一个表达式的函数,您可以使用简写语法 // 只包含一个表达式的函数,您可以使用简写语法
@ -346,6 +346,63 @@ list.forEach(
``` ```
<!--rehype:className=wrap-text--> <!--rehype:className=wrap-text-->
### 扩展函数 (Extension)
```dart
//extension 定义扩展名称 on 扩展类
extension StringExtension on String {
//扩展方法
String capitalize() {
if (isEmpty) {
return this;
}
// 将字符串的首字母大写
String topStr = this[0].toUpperCase();
return '${topStr}${substring(1)}';
}
}
void main(List<String> args) {
print("apple".capitalize());
// Print: Apple
print("苹果apple".capitalize());
// Print: 苹果apple
}
```
在不修改 String 类的前提下为其新增了 capitalize 方法
<!--rehype:className=wrap-text-->
### 运算符重载 (Extension)
<!--rehype:wrap-class=col-span-2-->
```dart
class Money {
final num amount;
Money({required this.amount});
}
// 利用扩展函数特性
extension MoneyOperatorExtension<T> on Money {
// operator 重载运算符
Money operator +(Money elements) {
Money newMoney = Money(amount: this.amount + elements.amount);
return newMoney;
}
}
void main(List<String> args) {
// 怎么样?两个类加起来了
Money appleMoney = Money(amount: 10.0);
Money cardMoney = Money(amount: 6.0);
Money allMoney = cardMoney + appleMoney;
print(allMoney.amount);
//Print: 16.0
}
```
类和对象 类和对象
---------- ----------
@ -747,6 +804,21 @@ var list2 = [0, ...list];
print(list2.length); // 打印: 4 print(list2.length); // 打印: 4
``` ```
### 延迟初始化
```dart
// token 类型非空,但是不用立即赋值
late String token;
void main(List<String> args) {
/// print(token);
/// Field 'token' has not been initialized
/// 在初始化前调用就会报错
token = "tokenContent";
print(token);
}
```
另见 另见
---- ----

View File

@ -171,6 +171,12 @@ Docker 网络
### 操作 ### 操作
获取容器连接的网络
```shell
docker inspect MyContainer | grep Network
```
删除网络 删除网络
```shell ```shell
@ -339,6 +345,7 @@ $ docker volume prune
`docker service ps` | 列出服务的任务 `docker service ps` | 列出服务的任务
`docker service scale <service_name>=<replica>` | 规模特殊服务 `docker service scale <service_name>=<replica>` | 规模特殊服务
`docker service update <options> <service_name>` | 更新服务选项 `docker service update <options> <service_name>` | 更新服务选项
<!--rehype:className=left-align-->
### Docker Stack ### Docker Stack
@ -349,6 +356,7 @@ $ docker volume prune
`docker stack services <appname>` | 列出与应用关联的服务 `docker stack services <appname>` | 列出与应用关联的服务
`docker stack ps <appname>` | 列出与应用关联的正在运行的容器 `docker stack ps <appname>` | 列出与应用关联的正在运行的容器
`docker stack rm <appname>` | 拆掉一个应用程序 `docker stack rm <appname>` | 拆掉一个应用程序
<!--rehype:className=left-align-->
### Docker Machine ### Docker Machine
<!--rehype:wrap-class=col-span-2--> <!--rehype:wrap-class=col-span-2-->
@ -369,6 +377,7 @@ $ docker volume prune
`docker-machine rm $(docker-machine ls -q)` | 删除所有虚拟机及其磁盘映像 `docker-machine rm $(docker-machine ls -q)` | 删除所有虚拟机及其磁盘映像
`docker-machine scp docker-compose.yml myvm1:~` | 将文件复制到节点的主目录 `docker-machine scp docker-compose.yml myvm1:~` | 将文件复制到节点的主目录
`docker-machine ssh myvm1 "docker stack deploy -c <file> <app>"` | 部署应用 `docker-machine ssh myvm1 "docker stack deploy -c <file> <app>"` | 部署应用
<!--rehype:className=left-align-->
### docker 主要命令 ### docker 主要命令
@ -414,6 +423,7 @@ $ docker volume prune
`update` | 更新一个或多个容器的配置 `update` | 更新一个或多个容器的配置
`version` | 显示 Docker 版本信息 `version` | 显示 Docker 版本信息
`wait` | 阻塞直到一个或多个容器停止,然后打印它们的退出代码 `wait` | 阻塞直到一个或多个容器停止,然后打印它们的退出代码
<!--rehype:className=left-align-->
### docker run/create ### docker run/create
<!--rehype:wrap-class=row-span-3--> <!--rehype:wrap-class=row-span-3-->

View File

@ -9,14 +9,14 @@ FED 前端导航
[CSDN](https://www.csdn.net/)<!--rehype:target=_blank&style=background: rgb(252 85 49/var(\-\-bg\-opacity));--> [CSDN](https://www.csdn.net/)<!--rehype:target=_blank&style=background: rgb(252 85 49/var(\-\-bg\-opacity));-->
[GitHub](https://github.com/)<!--rehype:target=_blank&style=background: rgb(0 0 0/var(\-\-bg\-opacity));--> [GitHub](https://github.com/)<!--rehype:target=_blank&style=background: rgb(0 0 0/var(\-\-bg\-opacity));-->
[InfoQ](http://www.infoq.com/cn)<!--rehype:target=_blank&style=background: rgb(66 133 244/var(\-\-bg\-opacity));--> [InfoQ](http://www.infoq.com/cn)<!--rehype:target=_blank&style=background: rgb(66 133 244/var(\-\-bg\-opacity));-->
[Medium](https://medium.com/topic/technology)<!--rehype:target=_blank--> [Medium](https://medium.com/topic/technology)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[SegmentFault](https://segmentfault.com/)<!--rehype:target=_blank&style=background: rgb(0 150 94/var(\-\-bg\-opacity));--> [SegmentFault](https://segmentfault.com/)<!--rehype:target=_blank&style=background: rgb(0 150 94/var(\-\-bg\-opacity));-->
[Stack Overflow](https://stackoverflow.com/)<!--rehype:target=_blank&style=background: rgb(244 130 37/var(\-\-bg\-opacity));--> [Stack Overflow](https://stackoverflow.com/)<!--rehype:target=_blank&style=background: rgb(244 130 37/var(\-\-bg\-opacity));-->
[V2EX](https://www.v2ex.com/?tab=tech)<!--rehype:target=_blank&style=background: rgb(0 0 0/var(\-\-bg\-opacity));--> [V2EX](https://www.v2ex.com/?tab=tech)<!--rehype:target=_blank&style=background: rgb(0 0 0/var(\-\-bg\-opacity));-->
[博客园](https://www.cnblogs.com/)<!--rehype:target=_blank&style=background: rgb(46 122 203/var(\-\-bg\-opacity));--> [博客园](https://www.cnblogs.com/)<!--rehype:target=_blank&style=background: rgb(46 122 203/var(\-\-bg\-opacity));-->
[开源中国](https://www.oschina.net/)<!--rehype:target=_blank&style=background: rgb(43 179 81/var(\-\-bg\-opacity));--> [开源中国](https://www.oschina.net/)<!--rehype:target=_blank&style=background: rgb(43 179 81/var(\-\-bg\-opacity));-->
[稀土掘金](https://juejin.im/)<!--rehype:target=_blank&style=background: rgb(30 128 255/var(\-\-bg\-opacity));--> [稀土掘金](https://juejin.im/)<!--rehype:target=_blank&style=background: rgb(30 128 255/var(\-\-bg\-opacity));-->
[W3cplus](https://www.w3cplus.com/)<!--rehype:target=_blank--> [W3cplus](https://www.w3cplus.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
<!--rehype:class=home-card--> <!--rehype:class=home-card-->
构建工具 构建工具
@ -34,31 +34,32 @@ FED 前端导航
[Turbopack](https://turbo.build/)<!--rehype:target=_blank&style=background: rgb(248 30 87/var(\-\-bg\-opacity));--> [Turbopack](https://turbo.build/)<!--rehype:target=_blank&style=background: rgb(248 30 87/var(\-\-bg\-opacity));-->
[Create React App](https://create-react-app.dev/)<!--rehype:target=_blank&style=background: rgb(60 106 146/var(\-\-bg\-opacity));--> [Create React App](https://create-react-app.dev/)<!--rehype:target=_blank&style=background: rgb(60 106 146/var(\-\-bg\-opacity));-->
[Browserify](http://browserify.org/)<!--rehype:target=_blank&style=background: rgb(60 106 146/var(\-\-bg\-opacity));--> [Browserify](http://browserify.org/)<!--rehype:target=_blank&style=background: rgb(60 106 146/var(\-\-bg\-opacity));-->
[Yeoman](http://yeoman.io/)<!--rehype:target=_blank--> [Yeoman](http://yeoman.io/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Grunt](https://gruntjs.com/)<!--rehype:target=_blank--> [Grunt](https://gruntjs.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Babel](https://babeljs.io/)<!--rehype:target=_blank&style=background: rgb(245 218 85/var(\-\-bg\-opacity));--> [Babel](https://babeljs.io/)<!--rehype:target=_blank&style=background: rgb(245 218 85/var(\-\-bg\-opacity));-->
[FIS3](https://fex-team.github.io/fis3/)<!--rehype:target=_blank--> [FIS3](https://fex-team.github.io/fis3/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
<!--rehype:class=home-card--> <!--rehype:class=home-card-->
教程文档 教程文档
--- ---
[MDN Web Docs](https://developer.mozilla.org/zh-CN/)<!--rehype:target=_blank&style=background: rgb(140 181 255/var(\-\-bg\-opacity));--> [MDN Web Docs](https://developer.mozilla.org/zh-CN/)<!--rehype:target=_blank&style=background: rgb(140 181 255/var(\-\-bg\-opacity));-->
[ECMAScript 6 入门](https://es6.ruanyifeng.com/)<!--rehype:target=_blank--> [ECMAScript 6 入门](https://es6.ruanyifeng.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
<!--rehype:class=home-card--> <!--rehype:class=home-card-->
JavaScript 工具 JavaScript 工具
--- ---
[Chrome Dev Tools](https://www.google.cn/chrome/)<!--rehype:target=_blank--> [Chrome Dev Tools](https://www.google.cn/chrome/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[CoffeeScript](https://coffeescript.org/)<!--rehype:target=_blank--> [CoffeeScript](https://coffeescript.org/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Firefox Developer Tools](https://www.mozilla.org/zh-CN/firefox/new/)<!--rehype:target=_blank--> [Firefox Developer Tools](https://www.mozilla.org/zh-CN/firefox/new/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[flow](https://flow.org/)<!--rehype:target=_blank&style=background: rgb(232 189 54/var(\-\-bg\-opacity));--> [flow](https://flow.org/)<!--rehype:target=_blank&style=background: rgb(232 189 54/var(\-\-bg\-opacity));-->
[TypeScript](https://www.typescriptlang.org/)<!--rehype:target=_blank&style=background: rgb(49 120 197/var(\-\-bg\-opacity));--> [TypeScript](https://www.typescriptlang.org/)<!--rehype:target=_blank&style=background: rgb(49 120 197/var(\-\-bg\-opacity));-->
[JS 压缩,格式化](https://www.css-js.com/)<!--rehype:target=_blank--> [JS 压缩,格式化](https://www.css-js.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[JSDoc](https://jsdoc.app/)<!--rehype:target=_blank&style=background: rgb(197 149 199/var(\-\-bg\-opacity));--> [JSDoc](https://jsdoc.app/)<!--rehype:target=_blank&style=background: rgb(197 149 199/var(\-\-bg\-opacity));-->
[UglifyJS](http://lisperator.net/uglifyjs/transform)<!--rehype:target=_blank--> [UglifyJS](http://lisperator.net/uglifyjs/transform)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Prettier](https://prettier.io/)<!--rehype:target=_blank&style=background: rgb(197 149 199/var(\-\-bg\-opacity));--> [Prettier](https://prettier.io/)<!--rehype:target=_blank&style=background: rgb(197 149 199/var(\-\-bg\-opacity));-->
[Biome - JS 语言格式化](https://prettier.io/)<!--rehype:target=_blank&style=background: rgb(96 165 250/var(\-\-bg\-opacity));&class=contributing tag&data-lang=格式化-->
<!--rehype:class=home-card--> <!--rehype:class=home-card-->
JavaScript 测试工具 JavaScript 测试工具
@ -66,38 +67,39 @@ JavaScript 测试工具
[Chai](http://chaijs.com/)<!--rehype:target=_blank&style=background: rgb(164 8 1/var(\-\-bg\-opacity));--> [Chai](http://chaijs.com/)<!--rehype:target=_blank&style=background: rgb(164 8 1/var(\-\-bg\-opacity));-->
[ESLint](https://eslint.org/)<!--rehype:target=_blank&style=background: rgb(76 50 195/var(\-\-bg\-opacity));--> [ESLint](https://eslint.org/)<!--rehype:target=_blank&style=background: rgb(76 50 195/var(\-\-bg\-opacity));-->
[JSHint](http://jshint.com/)<!--rehype:target=_blank--> [JSHint](http://jshint.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Jasmine](https://jasmine.github.io/)<!--rehype:target=_blank&style=background: rgb(138 65 130/var(\-\-bg\-opacity));--> [Jasmine](https://jasmine.github.io/)<!--rehype:target=_blank&style=background: rgb(138 65 130/var(\-\-bg\-opacity));-->
[Jest](https://jestjs.io/)<!--rehype:target=_blank&style=background: rgb(158 79 101/var(\-\-bg\-opacity));--> [Jest](https://jestjs.io/)<!--rehype:target=_blank&style=background: rgb(158 79 101/var(\-\-bg\-opacity));-->
[Mochajs](https://mochajs.org/)<!--rehype:target=_blank&style=background: rgb(141 103 72/var(\-\-bg\-opacity));--> [Mochajs](https://mochajs.org/)<!--rehype:target=_blank&style=background: rgb(141 103 72/var(\-\-bg\-opacity));-->
[Oxc - 比 ESLint 快 100 倍](https://oxc-project.github.io)<!--rehype:target=_blank&style=background: rgb(57 172 167/var(\-\-bg\-opacity));-->
<!--rehype:class=home-card--> <!--rehype:class=home-card-->
CSS 工具 CSS 工具
--- ---
[30秒CSS](https://www.30secondsofcode.org/css/)<!--rehype:target=_blank--> [30秒CSS](https://www.30secondsofcode.org/css/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Autoprefixer](https://github.com/postcss/autoprefixer)<!--rehype:target=_blank--> [Autoprefixer](https://github.com/postcss/autoprefixer)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[ColorZilla](http://www.colorzilla.com/gradient-editor/)<!--rehype:target=_blank--> [ColorZilla](http://www.colorzilla.com/gradient-editor/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[CSS Protips](https://github.com/AllThingsSmitty/css-protips)<!--rehype:target=_blank--> [CSS Protips](https://github.com/AllThingsSmitty/css-protips)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[CSS3 Maker](http://www.css3maker.com/)<!--rehype:target=_blank--> [CSS3 Maker](http://www.css3maker.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[cssnano](http://cssnano.co/)<!--rehype:target=_blank--> [cssnano](http://cssnano.co/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[CSSPIN](https://webkul.github.io/csspin/)<!--rehype:target=_blank--> [CSSPIN](https://webkul.github.io/csspin/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[CSSreference](https://cssreference.io/)<!--rehype:target=_blank--> [CSSreference](https://cssreference.io/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[CSSTree](https://github.com/csstree/csstree)<!--rehype:target=_blank--> [CSSTree](https://github.com/csstree/csstree)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[CSS美化压缩](http://tool.css-js.com/)<!--rehype:target=_blank--> [CSS美化压缩](http://tool.css-js.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Easing Functions Cheat Sheet](http://easings.net/zh-cn)<!--rehype:target=_blank--> [Easing Functions Cheat Sheet](http://easings.net/zh-cn)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Emmet](https://www.emmet.io/)<!--rehype:target=_blank--> [Emmet](https://www.emmet.io/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[est](http://ecomfe.github.io/est/)<!--rehype:target=_blank--> [est](http://ecomfe.github.io/est/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Flex Layout Attribute](https://github.com/StefanKovac/flex-layout-attribute)<!--rehype:target=_blank--> [Flex Layout Attribute](https://github.com/StefanKovac/flex-layout-attribute)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[minireset.css](http://lesscss.org/)<!--rehype:target=_blank--> [minireset.css](http://lesscss.org/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Normalize.css](http://necolas.github.io/normalize.css/)<!--rehype:target=_blank--> [Normalize.css](http://necolas.github.io/normalize.css/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[PostCSS](http://postcss.org/)<!--rehype:target=_blank--> [PostCSS](http://postcss.org/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[purifycss](https://github.com/purifycss/purifycss)<!--rehype:target=_blank--> [purifycss](https://github.com/purifycss/purifycss)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Less](https://lesscss.org/)<!--rehype:target=_blank&style=background: rgb(36 74 121/var(\-\-bg\-opacity));--> [Less](https://lesscss.org/)<!--rehype:target=_blank&style=background: rgb(36 74 121/var(\-\-bg\-opacity));-->
[SASS](http://sass-lang.com/)<!--rehype:target=_blank&style=background: rgb(191 64 128/var(\-\-bg\-opacity));--> [SASS](http://sass-lang.com/)<!--rehype:target=_blank&style=background: rgb(191 64 128/var(\-\-bg\-opacity));-->
[Sprite Cow](http://www.spritecow.com/)<!--rehype:target=_blank--> [Sprite Cow](http://www.spritecow.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Stylus](http://stylus-lang.com/)<!--rehype:target=_blank&style=background: rgb(126 194 66/var(\-\-bg\-opacity));--> [Stylus](http://stylus-lang.com/)<!--rehype:target=_blank&style=background: rgb(126 194 66/var(\-\-bg\-opacity));-->
[Stylelint](https://stylelint.io/)<!--rehype:target=_blank--> [Stylelint](https://stylelint.io/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
<!--rehype:class=home-card--> <!--rehype:class=home-card-->
框架类库 框架类库
@ -106,49 +108,50 @@ CSS 工具
[React](https://zh-hans.react.dev)<!--rehype:target=_blank&style=background: rgb(97 218 251/var(\-\-bg\-opacity));--> [React](https://zh-hans.react.dev)<!--rehype:target=_blank&style=background: rgb(97 218 251/var(\-\-bg\-opacity));-->
[Vue 中文](https://cn.vuejs.org/)<!--rehype:target=_blank&style=background: rgb(66 184 131/var(\-\-bg\-opacity));--> [Vue 中文](https://cn.vuejs.org/)<!--rehype:target=_blank&style=background: rgb(66 184 131/var(\-\-bg\-opacity));-->
[Angular](https://angular.io/)<!--rehype:target=_blank&style=background: rgb(195 8 47/var(\-\-bg\-opacity));--> [Angular](https://angular.io/)<!--rehype:target=_blank&style=background: rgb(195 8 47/var(\-\-bg\-opacity));-->
[jQuery](http://www.jquery123.com/)<!--rehype:target=_blank--> [jQuery](http://www.jquery123.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Bootstrap](https://getbootstrap.com/)<!--rehype:target=_blank&style=background: rgb(113 44 249/var(\-\-bg\-opacity));--> [Bootstrap](https://getbootstrap.com/)<!--rehype:target=_blank&style=background: rgb(113 44 249/var(\-\-bg\-opacity));-->
[React Native 中文](https://reactnative.cn/)<!--rehype:target=_blank&style=background: rgb(36 120 194/var(\-\-bg\-opacity));--> [React Native 中文](https://reactnative.cn/)<!--rehype:target=_blank&style=background: rgb(36 120 194/var(\-\-bg\-opacity));-->
[Flutter](https://flutter.dev/)<!--rehype:target=_blank&style=background: rgb(35 104 215/var(\-\-bg\-opacity));--> [Flutter](https://flutter.dev/)<!--rehype:target=_blank&style=background: rgb(35 104 215/var(\-\-bg\-opacity));-->
[RxJs](http://reactivex.io/rxjs/)<!--rehype:target=_blank--> [RxJs](http://reactivex.io/rxjs/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[htmx](https://htmx.org/)<!--rehype:target=_blank&style=background: rgb(61 114 215/var(\-\-bg\-opacity));-->
<!--rehype:class=home-card--> <!--rehype:class=home-card-->
在线代码编辑器工具 在线代码编辑器工具
--- ---
[CodePen](https://codepen.io/)<!--rehype:target=_blank--> [CodePen](https://codepen.io/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[CodeSandbox](https://codesandbox.io/)<!--rehype:target=_blank--> [CodeSandbox](https://codesandbox.io/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[StackBlitz](https://stackblitz.com/)<!--rehype:target=_blank--> [StackBlitz](https://stackblitz.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[esbuild](https://esbuild.github.io/)<!--rehype:target=_blank--> [esbuild](https://esbuild.github.io/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[JSFiddle](https://jsfiddle.net/)<!--rehype:target=_blank--> [JSFiddle](https://jsfiddle.net/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Replit](https://replit.com/)<!--rehype:target=_blank--> [Replit](https://replit.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[JSRUN.NET](https://jsrun.net/)<!--rehype:target=_blank--> [JSRUN.NET](https://jsrun.net/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[WebComponents.dev](https://webcomponents.dev/)<!--rehype:target=_blank--> [WebComponents.dev](https://webcomponents.dev/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[JS Bin](https://jsbin.com/)<!--rehype:target=_blank--> [JS Bin](https://jsbin.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[RunKit](https://runkit.com/)<!--rehype:target=_blank--> [RunKit](https://runkit.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
<!--rehype:class=home-card--> <!--rehype:class=home-card-->
兼容、性能测试 兼容、性能测试
--- ---
[Browser Sandbox](https://turbo.net/browsers)<!--rehype:target=_blank--> [Browser Sandbox](https://turbo.net/browsers)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Browserdiet](https://browserdiet.com/zh/)<!--rehype:target=_blank--> [Browserdiet](https://browserdiet.com/zh/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[browsershots](http://browsershots.org/)<!--rehype:target=_blank--> [browsershots](http://browsershots.org/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[BrowserStack](https://www.browserstack.com/)<!--rehype:target=_blank--> [BrowserStack](https://www.browserstack.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Can I use](http://caniuse.com/)<!--rehype:target=_blank--> [Can I use](http://caniuse.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[httpstatus](https://httpstatus.io/)<!--rehype:target=_blank--> [httpstatus](https://httpstatus.io/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Observatory](https://observatory.mozilla.org/)<!--rehype:target=_blank--> [Observatory](https://observatory.mozilla.org/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[PageSpeed Insights](https://developers.google.com/speed/pagespeed/insights/?hl=zh-CN)<!--rehype:target=_blank--> [PageSpeed Insights](https://developers.google.com/speed/pagespeed/insights/?hl=zh-CN)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Security Headers](https://securityheaders.com/)<!--rehype:target=_blank--> [Security Headers](https://securityheaders.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
<!--rehype:class=home-card--> <!--rehype:class=home-card-->
CDN CDN
--- ---
[cdnjs](https://cdnjs.com/)<!--rehype:target=_blank--> [cdnjs](https://cdnjs.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[jsDelivr](https://www.jsdelivr.com/)<!--rehype:target=_blank--> [jsDelivr](https://www.jsdelivr.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[前端静态资源库](https://cdn.baomitu.com/)<!--rehype:target=_blank--> [前端静态资源库](https://cdn.baomitu.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[UNPKG](https://unpkg.com/)<!--rehype:target=_blank--> [UNPKG](https://unpkg.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[Statically](https://statically.io/)<!--rehype:target=_blank--> [Statically](https://statically.io/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
[raw.githack.com](http://raw.githack.com/)<!--rehype:target=_blank--> [raw.githack.com](http://raw.githack.com/)<!--rehype:target=_blank&style=background: rgb(106 106 106/var(\-\-bg\-opacity));-->
<!--rehype:class=home-card--> <!--rehype:class=home-card-->

View File

@ -563,6 +563,34 @@ $ git fetch --all && git reset --hard origin/master
$ git log Branch1 ^Branch2 $ git log Branch1 ^Branch2
``` ```
### git 迁移
- 从原地址克隆一份裸版本库
```bash
$ git clone --bare https://github.com/username/project.git
```
- 然后新建一个地址,比如一下
```bash
$ https://gitee.com/username/newproject.git
```
- 进入project.git这个全裸版本库以镜像推送的方式上传代码到newproject上。
```
$ cd project.git
$ git push --mirror https://gitee.com/username/newproject.git
```
- 使用新地址,直接 Clone 到本地就可以了。
```
$ git clone https://gitee.com/username/newproject.git
```
Git Submodule 子模块 Git Submodule 子模块
------ ------

596
docs/github-copilot.md Normal file
View File

@ -0,0 +1,596 @@
Github Copilot 备忘清单
===
这是开始使用 [Github Copilot](https://code.visualstudio.com/docs/editor/github-copilot) 的快速参考指南。
\* 校对、错误请指正。📮邮箱: <a href="mailto:jussker@outlook.com">jussker@outlook.com</a>
一、准备工作
----
### 1、账号注册
> 需要先拥有一个Github账号并订阅Copilot。
事项 | 说明
:-|-
Github 账号 | [注册地址](https://github.com/signup)
订阅 Github Copilot | [订阅地址](https://github.com/features/copilot)
### 2、安装Vscode插件
<!--rehype:wrap-class=col-span-1 row-span-1-->
> 在扩展商店中搜索安装下面插件
插件名称 | 功能
:-|-
`GitHub Copilot`|编辑器中进行代码补全提示
`GitHub Copilot Chat`|插件栏可以与copilot对话
### 3、Vscode 中登陆 Github 账号
<!--rehype:wrap-class=col-span-1 row-span-1-->
- 安装后,点击右下角的 `GitHub Copilot` 插件图标,然后点击 `Sign in to GitHub` 登陆。
- 或者,点击工具栏中的 `Accounts` 图标,然后点击 `使用 Github 登陆以使用Github Copilot` 进行登陆。
### 4、Copilot 订阅方案
<!--rehype:wrap-class=col-span-2 row-span-1-->
方案 | 价格 | 特性
:-|-|-
Copilot Individual | 10美元/人/月 <br> (学生, 教师, 开源项目贡献者 免费) | 代码补全, 聊天机器人
Copilot Business| 19美元/人/月 |代码补全, 聊天机器人, 命令行工具, 安全漏洞筛查, 代码参考, 公共代码筛查, 知识产权, 企业安全与隐私保障
Copilot Enterprise| 39美元/人/月 | Business 特性 + 私有代码库的个性化聊天 + 文档搜索总结 + Git Pull Request 摘要 + 代码审查 + 模型微调
<!--rehype:className=show-header left-align-->
### 5、Copilot 使用入口
<!--rehype:wrap-class=col-span-1 row-span-1-->
|名称 | 描述 |
|-|-|
Inline Suggestions| 在编辑器中紧邻光标所在位置显示建议
Completions Panel| 在编辑器中展示完整的建议列表
Inline Chat| 在编辑器中紧邻光标所在位置发起对话
Editor Chat| 在编辑器中打开完整的对话界面
Silde Chat| 在编辑器的侧边栏打开对话界面
Quick Chat| 在顶部唤起对话界面
二、提示技巧
----
### 提示之禅
<!--rehype:wrap-class=col-span-1 row-span-1-->
> 你与 `copilot` 之间的关系,就是作家和插画师的关系。
> 你只有尽可能的全面、干练、清晰的描述你的故事(即 `上下文`)。
> `copilot` 才能根据你的故事画出精美的插画 (即 `代码` )。
### 提示技巧
<!--rehype:wrap-class=col-span-1 row-span-1-->
- 1⃣ 提供上下文信息
- 2⃣ 上下文可被预测
### 实战教程
- [Youtube GitHub Copilot Series](https://www.youtube.com/playlist?list=PLj6YeMhvp2S5_hvBl2SE-7YCHYlLQ0bPt)
- [Pragmatic techniques to get the most out of GitHub Copilot](https://www.youtube.com/watch?v=CwAzIpc4AnA)
- [How I used GitHub Copilot to build a browser extension](https://github.blog/2023-05-12-how-i-used-github-copilot-to-build-a-browser-extension/)
### 上下文信息的种类
<!--rehype:wrap-class=col-span-2 row-span-1-->
类型|说明
-|-
文件|Copilot会查看编辑器中当前和紧邻打开的文件。
注释|Copilot会根据紧邻的注释为你的代码提供帮助和建议。如 docstring, 块注释, 行注释之类。
命名|良好的命名能帮助Copilot更好地理解你的代码如函数名, 变量名, 文件名等
代码|Copilot会查看你的代码和它附近的代码以生成帮助你的建议。
<!--rehype:className=show-header left-align-->
### 上下文:文件
> Copilot会查看编辑器中当前和紧邻打开的文件以分析上下文并提供适当的建议。
---
> - 1、避免打开过多的文件以便Copilot能够更好地理解你的代码。
> - 2、打开的文件尽量相关且有共性。
> - 3、如果是新项目可以打开一些模版代码、数据文件以及参考文档等相关示例文件。以便Copilot能够更好地理解你的期望。等已经开发了一些代码后这些示例文件就可以删除了。
### 上下文: 注释: 顶部注释
创建一个新文件时,在文件顶部添加注释,描述你的需求。这对 Copilot 很有帮助。
\* 下面说明将使用`...`表示copilot开始生成的位置
```python
# Download file from an URL and analyze its content
# Details:
# * Download the file from an URL
# * Save the downloaded files into `./download` folder
# * Use `filetype` of the file to specify how to parse
# * Filetype can be `.pdf`, `.html`, `.epub`, `.md` and `.txt`
# * Use NLP or OCR to get the file content
# * Tokenize the file content and get the statistics result
import ...
```
### 上下文: 注释: 行内注释
在每个函数上面或重要代码块的上面添加注释,以帮助 Copilot 了解你代码中的一些意图或问题。
\* 下面说明将使用`...`表示copilot开始生成的位置
函数上方添加注释说明
```python
# parse the JSON string into User object
def ...
```
---
代码添加注释说明
```python
# ...
api_sever = FastApi(...)
# starting the API Sever, enable ssl, bind to 8443 port
...
```
### 上下文: 注释: Docstring
<!--rehype:wrap-class=col-span-1 row-span-2-->
有时候当你已经拥有详细设计文档,但未编写功能代码时,可以直接使用 docstring 中的描述来让 copilot 生成代码。
```python
def send_email(to_address: Email, subject: str, content: HTML): -> StatusCode:
"""
Send email to specified address
Parameters
----------
to_address : Email
The email address to send to
subject : str
The email subject
content : HTML
The email content
Returns
-------
StatusCode
The sending result
"""
...
```
### 上下文: 注释: 提问
> 如果你不想切换到 copilot chat 时,注释也可以用于提问。
```python
# Q: What is the difference between `os.path.join` and `pathlib.PurePath`?
# A: ...
```
### 上下文: 注释: Todo
> 你也可以让 copilot 为你生成 `todo` 列表来评估工作量。
```python
# Parse the json file into a Talks object
# TODO:
# -[ ] 1. ...
```
### 上下文: 命名
> 你的命名应该足够明确以便于 Copilot 理解你的意图
#### bad case
```python
a = 60
def send(dict):
...
class data:
...
```
#### good case
```python
timeout = 60
def send_email(to_address: Email, subject: str, content: HTML): -> StatusCode:
...
class Email:
...
```
### 上下文: 代码: 代码示例
> 提供片段代码示例,以帮助 Copilot 更好地开始新的开发任务。
>
> - 使用的框架与库
> - 代码风格
> - 算法逻辑
```python
from typing import List
from typing import Optional
from sqlalchemy import ForeignKey
from sqlalchemy import String
from sqlalchemy.orm import DeclarativeBase
from sqlalchemy.orm import Mapped
from sqlalchemy.orm import mapped_column
from sqlalchemy.orm import relationship
class Base(DeclarativeBase):
pass
class User(Base):
__tablename__ = "user_account"
id: Mapped[int] = mapped_column(primary_key=True)
name: Mapped[str] = mapped_column(String(30))
fullname: Mapped[Optional[str]]
addresses: Mapped[List["Address"]] = relationship(
back_populates="user", cascade="all, delete-orphan"
)
def __repr__(self) -> str:
return f"User(id={self.id!r}, name={self.name!r}, fullname={self.fullname!r})"
# Email Address
...
```
### 上下文: 代码: 数据示例
> 提供片段数据示例,以帮助 Copilot 更好地开始新的开发任务。
>
> - 数据结构与类型
> - 命名
> - 值处理逻辑
```python
dailogs = [
{
"timestamp": "May 1, 2023 11:00:00",
"text": "Hello, World!",
"speaker": "Jack",
},
{
"timestamp": "May 1, 2023 11:01:00",
"text": "Hello, Copilot!",
"speaker": "Copilot",
},
]
# Parse the json object into `Dialog` object
...
```
三、快捷键
----
<!--rehype:body-class=cols-2-->
对于mac用户建议修改alt相关的快捷键因为mac上的alt+字母键有可能被输入法使用了。若有自定义过输入法`keylayout`,则忽略这句话。
另外没有快捷键的命令,可以唤起`命令面板`后输入查询关键字筛选后执行。
### Github Copilot
<!--rehype:wrap-class=col-span-2 row-span-1-->
#### Copilot 中 Inline Suggestions 相关命令
| 命令 |说明 | 快捷键 | Mac 快捷键 |
|-|:-|:-|:-|
`editor.action.inlineSuggest.trigger`| 触发内联建议 | `alt+\` | `alt+\`
`editor.action.inlineSuggest.showPrevious`| 显示上一个内联建议 | `alt+[`| `alt+[`
`editor.action.inlineSuggest.showNext`| 显示下一个内联建议 | `alt+]`| `alt+]`
`editor.action.inlineSuggest.acceptNextWord`| 接受内联建议的下一个字 | `ctl+right`| `cmd+right`
`editor.action.inlineSuggest.commit`| 接受内联建议 | `Tab`| `Tab`
`editor.action.inlineSuggest.hide`| 隐藏内联建议 | `Esc`| `Esc`
`editor.action.inlineSuggest.acceptNextLine`| 接受内联建议的下一行 | - | -
<!--rehype:className=show-header wrap-text left-align-->
#### Copilot 中 Completions Panel 相关命令
| 命令 |说明 | 快捷键 | Mac 快捷键 |
|-|:-|:-|:-|
`github.copilot.generate`| 打开 `Completions Panel` | `ctrl+enter`| `ctrl+enter`
`github.copilot.acceptCursorPanelSolution`| 接受`Completions Panel`光标所在的建议 | `ctrl+/` | `ctrl+/`
`github.copilot.previousPanelSolution`| 查看上一个建议 | `alt+[`| `alt+[`
`github.copilot.nextPanelSolution`| 查看下一个建议 | `alt+]`| `alt+]`
<!--rehype:className=show-header wrap-text left-align-->
#### Copilot 中 其他命令
| 命令 |说明 | 快捷键 | Mac 快捷键 |
|-|:-|:-|:-|
`github.copilot.toggleCopilot`| 启用/禁用 Copilot 补全提示 | -| -
`github.copilot.collectDiagnostics`| 收集诊断信息 | -| -
`github.copilot.openLogs`| 打开日志窗口 | -| -
`github.copilot.sendFeedback`| 打开社区网站 | -| -
`github.copilot.signIn`| 登陆 | -| -
<!--rehype:className=show-header wrap-text left-align-->
### Github Copilot Chat
<!--rehype:wrap-class=col-span-2 row-span-1-->
#### Copilot Chat 中 Chat 相关命令
| 命令 |说明 | 快捷键 | Mac 快捷键 |
|-|:-|:-|:-|
`github.copilot.interactiveEditor.explain`|进行解释(选中内容或光标所在的文件)|-|-
`github.copilot.terminal.explainTerminalSelection`|对此进行解释(需要在终端中使用)|-|-
`github.copilot.terminal.explainTerminalSelectionContextMenu`|Copilot: 对此进行解释(需要在终端中使用)|鼠标右键菜单|鼠标右键菜单
`github.copilot.terminal.explainTerminalLastCommand`|对终端中最后一个命令进行解释(需要在终端中使用)|-|-
<!--rehype:className=show-header wrap-text left-align-->
#### Copilot Chat 中 Inline Chat 相关命令
| 命令 |说明 | 快捷键 | Mac 快捷键 |
|-|:-|:-|:-|
`inlineChat.start`|代码内聊天| - | -
`github.copilot.interactiveEditor.generate`|在此生成(在光标所在位置唤起inline chat的`/generate`功能)| - | -
`github.copilot.interactiveEditor.generateDocs`|生成文档| - | -
`github.copilot.interactiveEditor.generateTests`|生成测试| - | -
`github.copilot.interactiveEditor.fix`|修复此| - | -
<!--rehype:className=show-header wrap-text left-align-->
#### Copilot Chat 中 Quick Chat 相关命令
| 命令 |说明 | 快捷键 | Mac 快捷键 |
|-|:-|:-|:-|
`workbench.action.quickchat.toggle`|开启/关闭 Quick Chat|`shift+cmd+i`|`shift+cmd+i`
`github.copilot.terminal.suggestCommand`|建议终端命令|`ctrl+i`(仅在终端起作用)|`cmd+i`
<!--rehype:className=show-header wrap-text left-align-->
#### Copilot Chat 中 Editor Chat 相关命令
| 命令 |说明 | 快捷键 | Mac 快捷键 |
|-|:-|:-|:-|
`workbench.action.openChat.copilot`|打开编辑器聊天|-|-
<!--rehype:className=show-header wrap-text left-align-->
#### Copilot Chat 其他命令
| 命令 |说明 | 快捷键 | Mac 快捷键 |
|-|:-|:-|:-|
`github.copilot.interactiveSession.feedback`|打开github Issues|-|-
`github.copilot.debug.workbenchState`|日志工作台状态|-|-
`github.copilot.ghpr.applySuggestion`|为Github Pull Request提供代码建议|-|-
<!--rehype:className=show-header wrap-text left-align-->
四、Copilot Chat 的 Slash Commands 使用技巧
----
> 在聊天对话框中可以通过`/`开头的命令来与Copilot Chat进行交互。
### Slash Commands 示例
<!--rehype:wrap-class=col-span-1 row-span-1-->
#### Slash Commands 由四部分构成
|元素|说明|
|-|-|
|- Agent | 指定Agent, 符号为 `@`, 可选
|- Commands | 指定命令, 符号为 `/`, 可选
|- 变量 | 引用内容, 符号为 `#`, 可选
|- 用户输入的指令 | 可选
#### 例子
```
/explain def helloworld():...
@vscode /api 请解释 inlineChat.start 的作用
@workspace /explain def helloworld():...
在每一行代码末尾添加注释进行解释
```
#### Agent
| Agent |说明 |
|- |:-|
@vscode |vscode命令与插件的问题
@workspace|项目workspace相关的问题
### Inline Chat 的 Slash Commands
<!--rehype:wrap-class=col-span-1 row-span-1-->
---
> 通过命令 `inlineChat.start` 触发 `inline chat` 后使用
|命令 |说明 |
|- |:-|
/doc |在此添加文档注释
/explain |对选中的代码进行解释
/fix |修复此选中的代码
/tests |为选中的代码生成单元测试
---
> 通过命令 `github.copilot.interactiveEditor.generate` 触发
|命令 |说明 |
|- |:-|
/generate |在此生成, 该命令无法由用户输入
---
> 当然也可以直接选中区域然后在inline chat中输入指令执行 copilot会对选中区域进行指令操作
|常用指令|
| - |
|在每一行代码末尾添加注释进行解释|
|使代码满足PEP484要求|
<!--rehype:className=show-header wrap-text left-align-->
### Silde Chat 的 Slash Commands
<!--rehype:wrap-class=col-span-1 row-span-2-->
> 通过命令 `workbench.action.chat.openInSidebar` 触发 `chat` 后使用
> 或点击侧边栏上的Copilot聊天按钮
> 在Chat输入框中还允许指定Agent(即环境)
#### Slash Commands
|命令 |说明 |
|- |:-|
/api |回答vscode扩展插件开发的问题
/explain |对选中的代码进行解释
/fix |修复此选中的代码
/new |创建新项目workspace
/newNotebook |创建新的Jupyter Notebook
/terminal |解释命令行里的命令
/tests |为选中的代码生成单元测试
/help |帮助说明
/clear |清除会话
### `/terminal`特有的变量, 以`#`号开头
> 仅在`/terminal`命令中可用
| 变量 |说明 |
|-|:-|
`#terminalLastCommand`|最后一次执行的终端命令
`#terminalSelection`|选中的终端命令
### 的 Slash Commands
<!--rehype:wrap-class=col-span-1 row-span-1-->
- Quick Chat 与 Chat 的 Slash Commands相同
- Editor Chat 与 Chat 的 Slash Commands相同
五、参数设置
----
打开vscode 命令面板, 输入`Preferences:Open Settings` 打开配置文件,在文件模式下配置相关参数.
完整参数说明可以查看 `copilot``copilot chat` 两个[插件目录](https://code.visualstudio.com/docs/editor/extension-marketplace#_where-are-extensions-installed)下的 `package.json` 文件获知。
### 完整配置参考
```json
// settings.json
{
// ...
"github.copilot.chat.welcomeMessage": "always",
"github.copilot.chat.localeOverride": "zh-CN",
"github.copilot.editor.enableCodeActions": true,
"github.copilot.editor.iterativeFixing": true,
"github.copilot.editor.enableAutoCompletions": true,
"github.copilot.enable": {
"plaintext": false,
"ini": false,
"markdown": true,
"*": true
},
"github.copilot.advanced": {
"length": 4000,
"inlineSuggestCount": 5,
"top_p": 1,
"temperature": "0.8",
"listCount": 10,
"stops": {
"*": [
"\n\n\n"
],
"python": [
"\ndef ",
"\nclass ",
"\nif ",
"\n\n#"
]
},
"debug.showScores": true,
"indentationMode": {
"python": false,
"javascript": false,
"javascriptreact": false,
"jsx": false,
"typescript": false,
"typescriptreact": false,
"go": false,
"ruby": false,
"*": true
}
}
// ...
}
```
### 参数说明
<!--rehype:wrap-class=col-span-2 row-span-1-->
#### 代理参数
|设置参数 |值类型|说明 |
|:--|:--|:--|
`"http.proxy"`| string |配置网络代理地址
#### Copilot Chat 参数
|设置参数 |值类型|说明 |
|:--|:--|:--|
`"github.copilot.chat.localeOverride"`| string | 设置Copilot本地语言
`"github.copilot.chat.welcomeMessage"`| string |Copilot Chat 是否显示欢迎语<br>`first`: 仅第一次启动时, `always`: 总是, `never`: 从不
#### Copilot 基本参数
|设置参数 |值类型|说明 |
|:--|:--|:--|
`"editor.inlineSuggest.enabled"`| boolean |启用内联建议
`"github.copilot.editor.iterativeFixing"`| boolean| 允许 Copilot 提供迭代修复建议
`"github.copilot.editor.enableAutoCompletions"`| boolean |允许 Copilot 提供自动补全
`"github.copilot.editor.enableCodeActions"`| boolean|允许 Copilot 代码操作建议,这些操作可能包括重构代码、优化代码结构、修复可错误等
#### 设置 Copilot 生效的文件类型
|设置参数 |值类型|说明 |
|:--|:--|:--|
`"github.copilot.enable"`| json |请将 `"*": true` 放到末尾 <br>[语言](https://code.visualstudio.com/docs/languages/identifiers)后设置 `false` 表示禁用copilot, 设置 `true` 表示启用
#### Copilot 高级参数
> github.copilot.advanced 可以控制模型参数,最终影响到代码生成. 其值为json
|设置参数 |值类型|说明 |
|:--|:--|:--|
`"length"`| integer | 生成的代码字数, 默认为 `500`
`"top_p"`| number | 控制模型候选范围,默认值为 `1`,值范围为`0.0~1.0`
`"temperature"`| string | 控制模型的创造性,默认值为 `""`,值越大越不可预测,值范围为`0.0~1.0`
`"inlineSuggestCount"`| integer | 内联提示的个数, 默认为`3`
`"listCount"`| integer | 控制`Completions Panel`中建议个数,默认为 `10`
`"stops"`| json | 控制模型代码生成时停止的标志,可以按[语言](https://code.visualstudio.com/docs/languages/identifiers)来控制
`"indentationMode"`| json | 指定[语言](https://code.visualstudio.com/docs/languages/identifiers)是否采用该语言的缩近模式由此可能会与stops冲突比如采用`\{\}`缩近时,设置该参数时需要综合考虑
`"debug.showScores"`| boolean | 在代码建议列表中显示每个建议的分数
<!--rehype:className=wrap-text -->
END... ENJOY YOURSELF
----
> 欢迎大家添加新内容,校对、错误请指正。📮邮箱: <a href="mailto:jussker@outlook.com">jussker@outlook.com</a>
参考来源
----
\[1\]: [GitHub Copilot in VS Code](https://code.visualstudio.com/docs/editor/github-copilot)
\[2\]: [How to use GitHub Copilot: Prompts, tips, and use cases](https://github.blog/2023-06-20-how-to-write-better-prompts-for-github-copilot/)
\[3\]: [GitHub Copilot Official Website](https://github.com/features/copilot)
\[4\]: [GitHub Copilot Series (Youtube)](https://www.youtube.com/playlist?list=PLj6YeMhvp2S5_hvBl2SE-7YCHYlLQ0bPt)
\[5\]: [Pragmatic techniques to get the most out of GitHub Copilot (Youtube)](https://www.youtube.com/watch?v=CwAzIpc4AnA)
\[6\]: [How I used GitHub Copilot to build a browser extension](https://github.blog/2023-05-12-how-i-used-github-copilot-to-build-a-browser-extension)
\[7\]: [Visual Studio Code, Where are extensions installed?](https://code.visualstudio.com/docs/editor/extension-marketplace#_where-are-extensions-installed)
\[8\]: [Visual Studio Code, Language Identifiers](https://code.visualstudio.com/docs/languages/identifiers)

View File

@ -11,7 +11,7 @@ JavaScript 备忘清单
JavaScript 是一种轻量级的解释型编程语言。 JavaScript 是一种轻量级的解释型编程语言。
- [JSON 备忘清单](json.md) - [JSON 备忘清单](json.md)
- [JavaScript 中的正则表达式](/regex#regex-in-javascript) - [JavaScript 中的正则表达式](./regex.md#javascript-中的正则表达式)
- [TypeScript 备忘清单](./typescript.md) - [TypeScript 备忘清单](./typescript.md)
### 打印调试 ### 打印调试

View File

@ -17,6 +17,7 @@ fun main() {
main() 函数是每个 Kotlin 程序的起点,在执行之前必须包含在代码中 main() 函数是每个 Kotlin 程序的起点,在执行之前必须包含在代码中
### 打印声明 ### 打印声明
<!--rehype:wrap-class=row-span-2-->
```kotlin ```kotlin
println("Greetings, earthling!") println("Greetings, earthling!")
@ -31,6 +32,7 @@ Take me to your leader.
``` ```
### 注释 ### 注释
<!--rehype:wrap-class=row-span-2-->
```kotlin ```kotlin
// 这是单行注释 // 这是单行注释
@ -109,7 +111,7 @@ println(monument.length)
``` ```
### 字符转义序列 ### 字符转义序列
<!--rehype:wrap-class=row-span-2--> <!--rehype:wrap-class=row-span-3-->
```kotlin ```kotlin
print("\"Excellent!\" I cried. \"Elementary,\" said he.") print("\"Excellent!\" I cried. \"Elementary,\" said he.")
@ -149,6 +151,7 @@ print("\"Excellent!\" I cried. \"Elementary,\" said he.")
``` ```
### 增强赋值运算符 ### 增强赋值运算符
<!--rehype:wrap-class=row-span-2-->
```kotlin ```kotlin
var batteryPercentage = 80 var batteryPercentage = 80
@ -267,6 +270,7 @@ println(shorts && sunny) // false
``` ```
### 或运算符:|| ### 或运算符:||
<!--rehype:wrap-class=row-span-2-->
```kotlin ```kotlin
var late = true var late = true
@ -295,6 +299,7 @@ println(!full) // true
``` ```
### 评估顺序 ### 评估顺序
<!--rehype:wrap-class=row-span-2-->
```kotlin ```kotlin
!true && (false || true) // false !true && (false || true) // false
@ -311,6 +316,16 @@ println(!full) // true
*/ */
``` ```
### 等式运算符
```kotlin
var myAge = 22
var sisterAge = 21
myAge == sisterAge // false
myAge !== sisterAge // true
```
### 嵌套条件 ### 嵌套条件
```kotlin ```kotlin
@ -356,16 +371,6 @@ if (height in 1..53) {
``` ```
<!--rehype:className=wrap-text--> <!--rehype:className=wrap-text-->
### 等式运算符
```kotlin
var myAge = 22
var sisterAge = 21
myAge == sisterAge // false
myAge !== sisterAge // true
```
Collections Collections
--- ---
@ -523,7 +528,7 @@ fun main() {
### 默认参数 ### 默认参数
```kotlin ```kotlin
fun favoriteLanguage(name, language = "Kotlin") { fun favoriteLanguage(name: String, language: String = "Kotlin") {
println("Hello, $name. Your favorite programming language is $language") println("Hello, $name. Your favorite programming language is $language")
} }
@ -608,10 +613,11 @@ fun main() {
### 简单的高阶函数 ### 简单的高阶函数
<!--rehype:wrap-class=col-span-2--> <!--rehype:wrap-class=col-span-2-->
```kotlin ```kotlin
//注意啦这里的num1AndNum2有个operation它是接收了一个函数作为形参 // 注意啦,这里的 num1AndNum2 有个 operation它是接收了一个函数作为形参
fun num1AndNum2(num1: Int, num2: Int, operation: (Int, Int) -> Int): Int { fun num1AndNum2(num1: Int, num2: Int, operation: (Int, Int) -> Int): Int {
//让我们试着向operation传入参数 // 让我们试着向 operation 传入参数
return operation(num1, num2) return operation(num1, num2)
} }
@ -622,14 +628,11 @@ fun plus(num1: Int, num2: Int): Int {
fun main(args: Array<String>) { fun main(args: Array<String>) {
val total = num1AndNum2(100, 200, ::plus) val total = num1AndNum2(100, 200, ::plus)
println(total)//300 println(total)//300
//怎么样?我们利用传入一个函数来充当另一个函数的参数 // 怎么样?我们利用传入一个函数来充当另一个函数的参数
} }
``` ```
还记得我们怎么在Java中用接口吗 还记得我们怎么在 Java 中用接口吗?试着用函数参数简化它
试着用函数参数简化它
<!--rehype:className=wrap-text--> <!--rehype:className=wrap-text-->
@ -675,23 +678,81 @@ fun main(args: Array<String>) {
这里之所以可以把lambda写在外部是因为operation是最后一个参数。 这里之所以可以把lambda写在外部是因为operation是最后一个参数。
<!--rehype:className=wrap-text--> <!--rehype:className=wrap-text-->
### 扩展函数
---
### 类示例
```kotlin ```kotlin
// 具有包含默认值的属性的类 // Kotlin File
class Student { fun String.lettersCount(): Int {
var name = "Lucia" var count = 0
var semester = "Fall" // this 相当于我们下面写的字符串具体的内容
var gpa = 3.95 // for 可以用 forEach 代替
for (char in this) {
// 判断是不是字母(包括中文)
if (char.isLetter()) {
count++
}
}
return count
} }
// 没有类体的简写语法 fun main() {
class Student //不修改 String 类的情况下新增方法
println("123demo".lettersCount())
// Print: 4
}
``` ```
### 运算符重载
```kotlin
class Money(var amount: Double)
// 配合扩展函数,重载运算符 + 即 plus
operator fun Money.plus(money: Money): Money {
// 把金额相加返回一个新的 Money对象
return Money(this.amount + money.amount)
}
fun main() {
val appleMoney = Money(10.0)
val eggMoney = Money(6.0)
// 你没有看错,我们将两个类对象相加了
val allMoney = appleMoney + eggMoney
println(allMoney.amount)
// Print: 16.0
}
```
这里的 **运算符重载** 依赖于 **扩展函数**
<!--rehype:className=wrap-text-->
### 中缀表达式
```kotlin
// infix 定义一个中缀表达式,类似扩展函数那样
infix fun LocalDate.formatBy(pattern:String):String{
val formatter = DateTimeFormatter.ofPattern(pattern)
return this.format(formatter)
}
fun main() {
val currentDate = LocalDate.now()
println(currentDate formatBy "yyyy-MM-dd")
// Print: 2024-02-08
(1 until 100).forEach {
println(it)
// Print 1 至 99
}
}
```
---
### 类实例 ### 类实例
```kotlin ```kotlin
@ -715,42 +776,73 @@ fun main() {
``` ```
### 主构造函数 ### 主构造函数
<!--rehype:wrap-class=col-span-2-->
```kotlin ```kotlin
class Student(val name: String, val gpa: Double, val semester: String, val estimatedGraduationYear: Int) class Student(
val name: String,
val gpa: Double,
val semester: String,
val estimatedGraduationYear: Int
)
fun main() { fun main() {
var student = Student("Lucia", 3.95, "Fall", 2022) val student = Student("Lucia", 3.95, "Fall", 2022)
println(student.name) println(student.name)
// Prints: Lucia // Prints: Lucia
println(student.gpa) println(student.gpa)
// Prints: 3.95 // Prints: 3.95
println(student.semester) println(student.semester)
// Prints: Fall // Prints: Fall
println(student.estimatedGraduationYear) println(student.estimatedGraduationYear)
// Prints: 2022 // Prints: 2022
} }
```
<!--rehype:className=wrap-text-->
### 初始化块 ```
### 次构造函数
<!--rehype:wrap-class=col-span-2-->
```kotlin ```kotlin
class Student(val name: String, val gpa: Double, val semester: String, val estimatedGraduationYear: Int) { class Student(
init { val name: String,
println("$name has ${estimatedGraduationYear - 2020} years left in college.") val gpa: Double,
} val semester: String,
val estimatedGraduationYear: Int
) {
constructor(name: String, gpa: Double) : this(name, gpa, "Fall", 2024)
} }
fun main() { fun main() {
var student = Student("Lucia", 3.95, "Fall", 2022) val student = Student("Lucia", 3.95)
// Prints: Lucia has 2 years left in college. println(student.name)
// Prints: Lucia
println(student.semester)
// Prints: Fall
println(student.estimatedGraduationYear)
// Prints: 2024
} }
``` ```
<!--rehype:className=wrap-text--> <!--rehype:className=wrap-text-->
### 类示例
```kotlin
// 具有包含默认值的属性的类
class Student {
var name = "Lucia"
var semester = "Fall"
var gpa = 3.95
}
// 没有类体的简写语法
class Student
```
### 成员函数 ### 成员函数
<!--rehype:wrap-class=col-span-2--> <!--rehype:wrap-class=col-span-2 row-span-2-->
```kotlin ```kotlin
class Student(val name: String, val gpa: Double, val semester: String, val estimatedGraduationYear: Int) { class Student(val name: String, val gpa: Double, val semester: String, val estimatedGraduationYear: Int) {
@ -781,6 +873,109 @@ fun main() {
``` ```
<!--rehype:className=wrap-text--> <!--rehype:className=wrap-text-->
### 初始化块
```kotlin
class Student(val name: String, val gpa: Double, val semester: String, val estimatedGraduationYear: Int) {
init {
println("$name has ${estimatedGraduationYear - 2020} years left in college.")
}
}
fun main() {
var student = Student("Lucia", 3.95, "Fall", 2022)
// Prints: Lucia has 2 years left in college.
}
```
<!--rehype:className=wrap-text-->
### Data数据类
```kotlin
// 默认实现 getter/setter 和 toString 这些方法
data class UserInfo(
val name: String,
val age: Int
)
fun main() {
val userInfo = UserInfo("张三", 20)
println(userInfo.name)
// 张三
println(userInfo.toString())
// UserInfo(name=张三, age=20)
}
```
### 伴生对象
```kotlin
// 私有化构造方法
class User private constructor(val name: String) {
// 伴生对象,相当于一个静态类
companion object {
fun createUser(name: String): User {
return User(name)
}
}
}
fun main() {
// 就像是调用静态方法
val user = User.createUser("张三")
println(user.name)
//Print: 张三
}
```
### 内部类
```kotlin
class Outer {
val outStr: String = "Outer"
// inner 可以让内部类访问外部类
inner class Inner {
fun printOutStr(){
println(outStr)
}
}
}
fun main() {
val outer = Outer()
outer.Inner().printOutStr()
// Print: Outer
}
```
如果不用inner修饰会导致Inner类无法使用outStr
<!--rehype:className=wrap-text-->
### object单例类
```kotlin
object HttpUtils {
const val baseUrl = "https://xxxx.com"
fun getRequest(url: String): String {
// 示例代码....
return "Result"
}
}
fun main() {
println(HttpUtils.baseUrl)
// Print: "https://xxxx.com"
HttpUtils.getRequest("xxxxx")
}
```
object类中定义的函数和属性都可以用类名直接引用
<!--rehype:className=wrap-text-->
另见 另见
--- ---

View File

@ -98,7 +98,7 @@ Linux 命令速查表
<!--rehype:className=style-list--> <!--rehype:className=style-list-->
### 进程 ### 进程
<!--rehype:wrap-class=row-span-3--> <!--rehype:wrap-class=row-span-2-->
:--- | :--- :--- | :---
:--- | :--- :--- | :---
@ -109,9 +109,6 @@ Linux 命令速查表
**`kill pid`** | 使用给定的pid终止进程 **`kill pid`** | 使用给定的pid终止进程
**`killall proc`** | 杀死/终止所有名为proc的进程 **`killall proc`** | 杀死/终止所有名为proc的进程
**`pkill process-name`** | 向具有其名称的进程发送信号 **`pkill process-name`** | 向具有其名称的进程发送信号
**`bg`** | 将一个在后台暂停的命令,变成继续执行
**`fg`** | 将后台中的命令调至前台继续运行
**`fg n`** | job n to the foreground
**`lsof`** | 列出进程打开的文件 [#](./lsof.md) **`lsof`** | 列出进程打开的文件 [#](./lsof.md)
**`renice 19 PID`** | 使进程以非常低的优先级运行 **`renice 19 PID`** | 使进程以非常低的优先级运行
**`pgrep firefox`** | 查找Firefox进程ID **`pgrep firefox`** | 查找Firefox进程ID
@ -218,42 +215,119 @@ Linux 命令速查表
**`cd /test`** | 将目录更改为/test目录 **`cd /test`** | 将目录更改为/test目录
<!--rehype:className=style-list--> <!--rehype:className=style-list-->
快捷键 ### 文件描述符
<!--rehype:wrap-class=row-span-1-->
:--- | :---
:--- | :---
**`0`** | 标准输入
**`1`** | 标准输出
**`2`** | 错误输出
**`/dev/null`** | Linux的空设备文件俗称“黑洞”
<!--rehype:className=style-list-->
### 输出重定向
<!--rehype:wrap-class=row-span-2 col-span-2-->
:--- | :---
:--- | :---
**`>`** | 覆盖运算符
**`>>`** | 追加运算符
**`>&`** | 重定向合并运算符
**`command > filename`** | 标准输出覆盖写入新文件
**`command 1> filename`** | 标准输出覆盖写入新文件(同上)
**`command 2> filename`** | 标准错误覆盖写入新文件
**`command >> filename`** | 标准输出追加到新文件
**`command 1>> filename`** | 标准输出追加到新文件(同上)
**`command 2>> filename`** | 标准错误追加到新文件
**`2>&1`** | 标准错误重定向到标准输出
**`1>&2`** | 标准输出重定向到标准错误
<!--rehype:className=left-align-->
前后台
--- ---
### 命令行编辑 ### &(终端关闭,程序也关闭)
<!--rehype:wrap-class=row-span-2--> <!--rehype:wrap-class=row-span-2-->
:--- | :--- :--- | :---
:--- | :--- :--- | :---
**Tab** | 自动补全 **`command &`** | 使用后台进程模式执行 command
**Ctrl+A** | 移动光标到命令行首 **`Ctrl+Z`** | 将当前进程放到后台但程序是Stopped状态
**Ctrl+E** | 移动光标到命令行尾 **`jobs`** | 查看任务状态、ID等
**Ctrl+Left** | 光标左移一个单词 **`fg n`** | 将jobID为n的任务切到**前台**运行
**Ctrl+Right** | 光标右移一个单词 **`bg n`** | 将jobID为n的任务切到**后台**运行
**Ctrl+K** | 删除光标之后所有字符
**Ctrl+U** | 清空当前键入的命令 <!--rehype:className=style-list-->
**Ctrl+W** | 删除光标前的单词
**Ctrl+Y** | 粘贴`Ctrl+W``Ctrl+K`删除的内容 ### nohup终端关闭程序继续运行
**Ctrl+D** | 删除当前光标所在字符 (在没有字符时会关闭终端) <!--rehype:wrap-class=row-span-2-->
Ctrl+B (Left) | 光标左移(后退)
Ctrl+F (Right) | 光标右移(前进) :--- | :---
Ctrl+H (Backspace) | 删除光标的前一个字符 :--- | :---
**`nohup command &`** | 后台执行 command标准输出到 nohup.out
**`nohup command > log_file &`** | 后台执行 command标准输出到 log_file
**`nohup command > log_file 2>&1 &`** | 后台执行 command标准输出和错误输出到 log_file
**`nohup command > log_file 2>err_log &`** | 后台执行 command标准输出到 log_file错误输出到 err_log
**`ps/kill`** | 查看进程/结束进程
<!--rehype:className=style-list-->
### screen创建独立会话
<!--rehype:wrap-class=row-span-2-->
:--- | :---
:--- | :---
**`screen -S my_session`** | 创建一个名为 my_session 的会话
**`screen -ls`** | 列出当前所有的 session
**`screen -r my_session`** | 重新连接 my_session 这个会话
**`screen -d my_session`** | 脱离 my_session 这个会话
**`Ctrl+a+d`** | 在 screen 中,脱离当前会话
**`exit`** | 在 screen 中,退出并删除当前 screen
**`-X -S my_session quit`** | 删除 my_session 这个会话
**`screen -wipe`** | 删除所有已经失效的会话
<!--rehype:className=style-list-->
快捷键
---
### 命令行编辑
<!--rehype:wrap-class=row-span-2 col-span-2-->
:--- | :---
:--- | :---
`Tab` | 自动补全
`Ctrl`+`A` | 移动光标到命令行首
`Ctrl`+`E` | 移动光标到命令行尾
`Ctrl`+`Left` | 光标左移一个单词
`Ctrl`+`Right` | 光标右移一个单词
`Ctrl`+`K` | 删除光标之后所有字符
`Ctrl`+`U` | 清空当前键入的命令
`Ctrl`+`W` | 删除光标前的单词
`Ctrl`+`Y` | 粘贴 `Ctrl` + `W``Ctrl` + `K` 删除的内容
`Ctrl`+`D` | 删除当前光标所在字符 (在没有字符时会关闭终端)
`Ctrl`+`B` (Left) | 光标左移(后退)
`Ctrl`+`F` (Right) | 光标右移(前进)
`Ctrl`+`H` (Backspace) | 删除光标的前一个字符
<!--rehype:className=left-align shortcuts-->
### 其他 ### 其他
<!--rehype:wrap-class=row-span-2--> <!--rehype:wrap-class=row-span-2-->
:--- | :--- :--- | :---
:--- | :--- :--- | :---
**Ctrl+L** | 清屏 `Ctrl`+`L` | 清屏
**Ctrl+C** | 中断正在执行的程序 `Ctrl`+`C` | 中断正在执行的程序
**Ctrl+R** | 按字符串寻找历史命令 `Ctrl`+`R` | 按字符串寻找历史命令
**Ctrl+Z** | 将当前进程放到后台(之后可以用`fg`命令重回到前台 `Ctrl`+`Z` | 将当前进程放到后台(但程序是Stopped状态
**Shift+Insert** | 粘贴 `Shift`+`Insert` | 粘贴
**Ctrl+PageUp** | 屏幕输出向上翻页 `Ctrl`+`PageUp` | 屏幕输出向上翻页
**Ctrl+PageDown** | 屏幕输出向下翻页 `Ctrl`+`PageDown` | 屏幕输出向下翻页
Ctrl+P (Up) | 上一条命令 `Ctrl`+`P` (Up) | 上一条命令
Ctrl+N (Down) | 下一条命令 `Ctrl`+`N` (Down) | 下一条命令
<!--rehype:className=left-align shortcuts-->
另见 另见
--- ---

View File

@ -131,13 +131,11 @@ ___
### 代码 ### 代码
```markdown ````markdown
```javascript ```javascript
console.log("This is a block code") console.log("This is a block code")
``` ```
````
```
```markdown ```markdown
~~~css ~~~css

View File

@ -811,27 +811,38 @@ location ~ \/public\/(css|js|img)\/.*\.(js|css|gif|jpg|jpeg|png|bmp|swf) {
} }
``` ```
### 阻止常见攻击 ### ulimit 不继承系统设置的问题
<!--rehype:wrap-class=col-span-2--> <!--rehype:wrap-class=col-span-2-->
#### base64编码的网址 - 执行 status 命令
```nginx ```bash
location ~* "(base64_encode)(.*)(\()" { sudo service nginx status
deny all; ```
}
```
#### javascript eval() url 执行 status 命令,看到 Loaded: loaded (/lib/systemd/system/nginx.service;...) 这一行的nginx.service 文件位置
```nginx - 打开 service 文件
location ~* "(eval\()" {
deny all; ```bash
} sudo vim /lib/systemd/system/nginx.service
``` ```
- 修改 service 中的配置
找到 `[Service]` 部分,将 `LimitNOFILE=65535` 添加到该部分
```bash
[Service]
...
LimitNOFILE=65535
...
```
<!--rehype:className=style-timeline-->
解决 `systemctl` 管理的 ulimit 不继承系统设置的问题
### Gzip 配置 ### Gzip 配置
<!--rehype:wrap-class=col-span-4 row-span-2--> <!--rehype:wrap-class=col-span-4-->
```nginx ```nginx
gzip on; gzip on;
@ -851,8 +862,27 @@ gzip_types
gzip_disable "msie6"; gzip_disable "msie6";
``` ```
### 阻止常见攻击
<!--rehype:wrap-class=col-span-3-->
#### base64编码的网址
```nginx
location ~* "(base64_encode)(.*)(\()" {
deny all;
}
```
#### javascript eval() url
```nginx
location ~* "(eval\()" {
deny all;
}
```
### 使网站不可索引 ### 使网站不可索引
<!--rehype:wrap-class=col-span-2--> <!--rehype:wrap-class=col-span-3-->
```nginx ```nginx
add_header X-Robots-Tag "noindex"; add_header X-Robots-Tag "noindex";

View File

@ -473,6 +473,7 @@ const school = <div>学校</div>;
`<!--rehype:className=style-none-->` | \<li> 没有标记样式 `<!--rehype:className=style-none-->` | \<li> 没有标记样式
`<!--rehype:className=style-timeline-->` | `时间轴`样式 `<!--rehype:className=style-timeline-->` | `时间轴`样式
`<!--rehype:className=style-arrow-->` | `箭头`标记 `<!--rehype:className=style-arrow-->` | `箭头`标记
<!--rehype:className=left-align-->
### KaTeX 数学渲染 ### KaTeX 数学渲染

View File

@ -81,7 +81,7 @@ tar cvzf compressedArchive.tar.gz /home/cyberpunk/testdir
### 生成压缩率更高的 `tar.bz2` 文件 ### 生成压缩率更高的 `tar.bz2` 文件
`tar``bz2` 压缩,可以创建比 `gzip` 文件小的归档。`Bz2` 模式执行归档压缩和解压所需的时间比 `gzip` 模式多。通常,这个时间差可以忽略不计,但如果文件非常,或者是文件数量非常多,那么时间差就会非常大。 `tar``bz2` 压缩,可以创建比 `gzip` 文件小的归档。`Bz2` 模式执行归档压缩和解压所需的时间比 `gzip` 模式多。通常,这个时间差可以忽略不计,但如果文件非常,或者是文件数量非常多,那么时间差就会非常大。
```shell ```shell
tar cvfj Archive.tar.bz2 /home/cyberpunk/testdir tar cvfj Archive.tar.bz2 /home/cyberpunk/testdir

View File

@ -1,6 +1,6 @@
{ {
"name": "@wcj/reference", "name": "@wcj/reference",
"version": "1.41.0", "version": "1.42.0",
"description": "为开发人员分享快速参考备忘单(主要是方便自己)。", "description": "为开发人员分享快速参考备忘单(主要是方便自己)。",
"author": "jaywcjlove", "author": "jaywcjlove",
"license": "MIT", "license": "MIT",
@ -30,7 +30,7 @@
"devDependencies": { "devDependencies": {
"husky": "^8.0.1", "husky": "^8.0.1",
"lint-staged": "^13.0.3", "lint-staged": "^13.0.3",
"prettier": "^2.7.1", "prettier": "^3.0.0",
"refs-cli": "^1.5.1", "refs-cli": "^1.5.1",
"markdownlint": "^0.27.0", "markdownlint": "^0.27.0",
"markdownlint-cli": "^0.33.0" "markdownlint-cli": "^0.33.0"