2 Commits

Author SHA1 Message Date
1198b6c191 Update 3 files
- /_data/links.csv
- /_data/ai-cache.json
- /_data/other_repo_list.csv
2025-10-25 15:10:08 +00:00
1b5efb8edd Update 3 files
- /_posts/2025-10-12-recover.md
- /_data/other_repo_list.csv
- /index.html
2025-10-12 09:54:55 +00:00
5 changed files with 115 additions and 43 deletions

View File

@ -169,5 +169,6 @@
"/2025/07/24/screenshot.html": "这篇文章介绍了如何利用Cloudflare的“浏览器呈现”功能创建一个自动更新的网站预览图服务。作者发现这个新功能可以用来展示网站在不同设备上的显示效果通过在Cloudflare Workers中使用iframe和CSS缩放技术以及调用Cloudflare的接口抓取浏览器渲染的截图。虽然免费用户每天只有10分钟的使用时间限制了实时更新但作者通过缓存实现了每天自动更新一次的预览图并分享了具体的实现代码和使用方法。作者赞赏Cloudflare提供的这项强大且免费的服务。", "/2025/07/24/screenshot.html": "这篇文章介绍了如何利用Cloudflare的“浏览器呈现”功能创建一个自动更新的网站预览图服务。作者发现这个新功能可以用来展示网站在不同设备上的显示效果通过在Cloudflare Workers中使用iframe和CSS缩放技术以及调用Cloudflare的接口抓取浏览器渲染的截图。虽然免费用户每天只有10分钟的使用时间限制了实时更新但作者通过缓存实现了每天自动更新一次的预览图并分享了具体的实现代码和使用方法。作者赞赏Cloudflare提供的这项强大且免费的服务。",
"/2025/08/01/sw-proxy.html": "这篇文章介绍了作者如何利用Service Worker在现代浏览器中实现一个简单的反向代理功能以提供博客的备份和离线访问。作者原本希望通过Service Worker在用户浏览器中运行一个Web服务器来存储博客副本但发现 tar.gz 文件的处理需要第三方库且难以找到适用的解决方案尤其是对于tar文件的处理。作者最终选择使用Service Worker作为反向代理将请求转发到其他网站如GeoCities风格的静态网站托管平台实现了类似的效果。这个过程中作者体验到了浏览器功能的强大并认为Service Worker在离线场景中有更大的潜力尽管在他的例子中并没有充分展示这种优势。", "/2025/08/01/sw-proxy.html": "这篇文章介绍了作者如何利用Service Worker在现代浏览器中实现一个简单的反向代理功能以提供博客的备份和离线访问。作者原本希望通过Service Worker在用户浏览器中运行一个Web服务器来存储博客副本但发现 tar.gz 文件的处理需要第三方库且难以找到适用的解决方案尤其是对于tar文件的处理。作者最终选择使用Service Worker作为反向代理将请求转发到其他网站如GeoCities风格的静态网站托管平台实现了类似的效果。这个过程中作者体验到了浏览器功能的强大并认为Service Worker在离线场景中有更大的潜力尽管在他的例子中并没有充分展示这种优势。",
"/2025/08/10/tilde.html": "这篇文章介绍了作者在Tilde社区的体验这是一类基于类Unix环境的公共服务器社区类似于家目录提供预装的软件、开发环境和公共服务如聊天室、邮件、BBS论坛等强调了社区的互动性和共享精神。作者通过申请、审核过程加入了几个社区并详细描述了在这些社区中的个人主页、编程支持如Gemini和Gopher协议、博客发布、代码托管Git支持、CI/CD部署以及使用Git hooks自动化博客更新等功能。尽管作者受限于语言和工具使用体验未能充分参与社区交流但对社区学习新知识和丰富博客内容印象深刻。", "/2025/08/10/tilde.html": "这篇文章介绍了作者在Tilde社区的体验这是一类基于类Unix环境的公共服务器社区类似于家目录提供预装的软件、开发环境和公共服务如聊天室、邮件、BBS论坛等强调了社区的互动性和共享精神。作者通过申请、审核过程加入了几个社区并详细描述了在这些社区中的个人主页、编程支持如Gemini和Gopher协议、博客发布、代码托管Git支持、CI/CD部署以及使用Git hooks自动化博客更新等功能。尽管作者受限于语言和工具使用体验未能充分参与社区交流但对社区学习新知识和丰富博客内容印象深刻。",
"/2025/09/01/quine.html": "这篇文章主要介绍了作者在博客部署过程中对ZIP Quine自包含压缩包和自产生程序的探索过程。作者起初想利用压缩包实现离线浏览但遇到了压缩包不包含自身的问题。随后作者回顾了ZIP Quine的原理如droste.zip以及如何通过DEFLATE压缩算法的LZ77编码实现自包含。作者尝试了Russ Cox的方案但发现由于压缩格式限制实际操作中存在数据容量的限制无法存下整个博客。尽管如此作者还是研究了嵌套循环的ZIP Quine如Ruben Van Mello的论文中所描述的尽管空间仍然有限。探索过程中作者还学习了自产生程序Quine的概念包括其实现原理和各种编程语言中的例子。作者最后感慨探索过程中的收获比原本的目标更重要。" "/2025/09/01/quine.html": "这篇文章主要介绍了作者在博客部署过程中对ZIP Quine自包含压缩包和自产生程序的探索过程。作者起初想利用压缩包实现离线浏览但遇到了压缩包不包含自身的问题。随后作者回顾了ZIP Quine的原理如droste.zip以及如何通过DEFLATE压缩算法的LZ77编码实现自包含。作者尝试了Russ Cox的方案但发现由于压缩格式限制实际操作中存在数据容量的限制无法存下整个博客。尽管如此作者还是研究了嵌套循环的ZIP Quine如Ruben Van Mello的论文中所描述的尽管空间仍然有限。探索过程中作者还学习了自产生程序Quine的概念包括其实现原理和各种编程语言中的例子。作者最后感慨探索过程中的收获比原本的目标更重要。",
"/2025/10/12/recover.html": "这篇文章讲述了作者通过GitHub的Fork特性找回一个被删除的Brainfuck可视化演示仓库的经历。由于原仓库和作者主页都已消失作者推测GitHub在Fork时会共享对象库只要有任意一个Fork仓库存在GitHub就会保留所有对象从而可以通过找到一个Fork仓库的最新提交Hash值来还原目标仓库。作者通过Linux内核仓库的Fork进行验证随后在互联网档案馆上找到目标仓库的Fork以及其Hash值最终通过Git命令将本地仓库的HEAD指针指向目标提交成功恢复了该仓库的代码并将其部署到自己的GitHub Pages上。最后作者发现Software Heritage组织会保存所有代码因此在遇到类似情况时可以直接通过该平台进行查找。"
} }

View File

@ -20,3 +20,4 @@ Lanke's blog,https://blog.blueke.top/,https://blog.blueke.top/rss.xml,请为一
Pinpe 的云端,https://pinpe.top/,https://pinpe.top/rss.xml,一个属于自己的云朵。 Pinpe 的云端,https://pinpe.top/,https://pinpe.top/rss.xml,一个属于自己的云朵。
Chise Hachiroku,https://chise.hachiroku.com/,https://chise.hachiroku.com/zh/feed/,向明日的辉迹,干杯! Chise Hachiroku,https://chise.hachiroku.com/,https://chise.hachiroku.com/zh/feed/,向明日的辉迹,干杯!
映屿,https://www.glowisle.me/,https://www.glowisle.me/atom.xml,关于互联网、书籍、生活琐事以及那些一闪而过的念头 映屿,https://www.glowisle.me/,https://www.glowisle.me/atom.xml,关于互联网、书籍、生活琐事以及那些一闪而过的念头
东东,https://nihaha.com/,https://nihaha.com/feed/,城市与信仰
1 title link feed_url description
20 Pinpe 的云端 https://pinpe.top/ https://pinpe.top/rss.xml 一个属于自己的云朵。
21 Chise Hachiroku https://chise.hachiroku.com/ https://chise.hachiroku.com/zh/feed/ 向明日的辉迹,干杯!
22 映屿 https://www.glowisle.me/ https://www.glowisle.me/atom.xml 关于互联网、书籍、生活琐事以及那些一闪而过的念头
23 东东 https://nihaha.com/ https://nihaha.com/feed/ 城市与信仰

View File

@ -9,7 +9,6 @@ https://tildegit.org/Mayx/mayx
https://git.pixie.town/mayx/mayx https://git.pixie.town/mayx/mayx
https://cgit.tilde.town/~mayx/blog https://cgit.tilde.town/~mayx/blog
https://gitlab.haskell.org/mayx/mayx https://gitlab.haskell.org/mayx/mayx
https://git.gammaspectra.live/Mayx/blog
https://pagure.io/fork/mabbs/Blog https://pagure.io/fork/mabbs/Blog
https://repo2.serv00.com/git/pub/Mayx/mayx/ https://repo2.serv00.com/git/pub/Mayx/mayx/
https://git.tea-assets.com/mayx/blog https://git.tea-assets.com/mayx/blog
@ -36,7 +35,6 @@ https://git.dpark.io/mayx/blog
https://git.ykonkov.com/mayx/blog https://git.ykonkov.com/mayx/blog
http://116.62.245.34:3000/mayx/blog http://116.62.245.34:3000/mayx/blog
https://git.johann-brauer.de/mayx/blog https://git.johann-brauer.de/mayx/blog
https://git.barneo-tech.com/mayx/blog
https://git.shaunmcpeck.com/mayx/blog https://git.shaunmcpeck.com/mayx/blog
http://1.6.141.109:3000/mayx/blog http://1.6.141.109:3000/mayx/blog
http://52.28.156.42/mayx/blog http://52.28.156.42/mayx/blog
@ -48,7 +46,6 @@ https://git.anibilag.ru/mayx/blog
https://git.lolpro11.me/mayx/blog https://git.lolpro11.me/mayx/blog
https://git.unglab.com/mayx/blog https://git.unglab.com/mayx/blog
https://git.empirica.pro/mayx/blog https://git.empirica.pro/mayx/blog
http://xiaowangnas.com:8418/mayx/blog
http://47.115.203.168:3000/mayx/blog http://47.115.203.168:3000/mayx/blog
http://www.gitea.zhangc.top:3000/mayx/blog http://www.gitea.zhangc.top:3000/mayx/blog
https://git.chistyakov-it.ru/mayx/blog https://git.chistyakov-it.ru/mayx/blog
@ -63,7 +60,6 @@ https://git.pcgf.io/mayx/blog
https://nucleation.fusion.bref.cool/mayx/blog https://nucleation.fusion.bref.cool/mayx/blog
https://gitea.l2reworld.com/mayx/blog https://gitea.l2reworld.com/mayx/blog
https://git.bp-web.app/mayx/blog https://git.bp-web.app/mayx/blog
https://git.carinae.org/mayx/blog
http://47.103.91.160:50903/mayx/blog http://47.103.91.160:50903/mayx/blog
https://mygit.iexercice.com/mayx/blog https://mygit.iexercice.com/mayx/blog
http://162.215.134.149:4000/mayx/blog http://162.215.134.149:4000/mayx/blog
@ -85,10 +81,8 @@ https://git.terrainknowledge.com/mayx/blog
https://gitea.pickalurv.com/mayx/blog https://gitea.pickalurv.com/mayx/blog
http://183.239.197.12:10803/mayx/blog http://183.239.197.12:10803/mayx/blog
https://git.zeroplay.io/mayx/blog https://git.zeroplay.io/mayx/blog
https://vpgs.pro/mayx/blog
https://git.successkaoyan.com/mayx/blog https://git.successkaoyan.com/mayx/blog
https://git.veydlin.com/mayx/blog https://git.veydlin.com/mayx/blog
https://git.dcircus.com/mayx/blog
https://gitea.bitshift.us/mayx/blog https://gitea.bitshift.us/mayx/blog
http://114.55.134.197:3000/mayx/blog http://114.55.134.197:3000/mayx/blog
http://139.129.25.251:3000/mayx/blog http://139.129.25.251:3000/mayx/blog
@ -111,8 +105,6 @@ http://43.224.227.219:3000/mayx/blog
https://git.duplanet.ovh/mayx/blog https://git.duplanet.ovh/mayx/blog
http://Shiningon.top/mayx/blog http://Shiningon.top/mayx/blog
http://wsygitea.top/mayx/blog http://wsygitea.top/mayx/blog
https://git.ofdl.tools/mayx/blog
http://precious.harpy.faith/mayx/blog
https://git.yardtech.ru/mayx/blog https://git.yardtech.ru/mayx/blog
http://69.62.77.234:8888/mayx/blog http://69.62.77.234:8888/mayx/blog
https://gitea.bake.systems/mayx/blog https://gitea.bake.systems/mayx/blog
@ -132,7 +124,6 @@ http://43.163.207.174:3000/mayx/blog
http://rack1.raincs.cc:20253/mayx/blog http://rack1.raincs.cc:20253/mayx/blog
https://git.repo.in.net/mayx/blog https://git.repo.in.net/mayx/blog
https://git.dihe.moe/mayx/blog https://git.dihe.moe/mayx/blog
https://git.fracturedcode.net/mayx/blog
http://47.113.231.74:3000/mayx/blog http://47.113.231.74:3000/mayx/blog
https://gitea.belanjaparts.com/mayx/blog https://gitea.belanjaparts.com/mayx/blog
http://185.208.225.190:3000/mayx/blog http://185.208.225.190:3000/mayx/blog
@ -161,8 +152,6 @@ https://git.Apture.io/mayx/blog
https://git.dbfmp.cn/mayx/blog https://git.dbfmp.cn/mayx/blog
http://103.231.8.120/mayx/blog http://103.231.8.120/mayx/blog
https://gitea.jasonstolle.com/mayx/blog https://gitea.jasonstolle.com/mayx/blog
https://gitea.dokm.xyz/mayx/blog
https://nemoserver.iict.bas.bg/mayx/blog
https://git.istsoft.ru/mayx/blog https://git.istsoft.ru/mayx/blog
http://8.134.61.107:3000/mayx/blog http://8.134.61.107:3000/mayx/blog
http://47.107.88.161:3000/mayx/blog http://47.107.88.161:3000/mayx/blog
@ -175,20 +164,17 @@ http://8.137.12.29:3000/mayx/blog
https://gitea.irons.nz/mayx/blog https://gitea.irons.nz/mayx/blog
https://gitea.madf12.com/mayx/blog https://gitea.madf12.com/mayx/blog
http://8.134.104.234:3000/mayx/blog http://8.134.104.234:3000/mayx/blog
http://47.99.142.152:3000/mayx/blog
http://45.45.238.98:3000/mayx/blog http://45.45.238.98:3000/mayx/blog
http://git.ugohous.com/mayx/blog http://git.ugohous.com/mayx/blog
https://git.vce.de/mayx/blog https://git.vce.de/mayx/blog
https://gitea.carmon.co.kr/mayx/blog https://gitea.carmon.co.kr/mayx/blog
http://142.171.47.170:3000/mayx/blog http://142.171.47.170:3000/mayx/blog
https://git.aion.bi/mayx/blog https://git.aion.bi/mayx/blog
https://git.skillmad.ru/mayx/blog
https://git.werkraum-karlsruhe.org/mayx/blog https://git.werkraum-karlsruhe.org/mayx/blog
http://111.231.146.230:8418/mayx/blog http://111.231.146.230:8418/mayx/blog
https://git.winscloud.net/mayx/blog https://git.winscloud.net/mayx/blog
https://git.pwaapp.cc/mayx/blog https://git.pwaapp.cc/mayx/blog
http://188.245.99.186:3000/mayx/blog http://188.245.99.186:3000/mayx/blog
https://sources.krechet.tech/mayx/blog
http://119.28.73.80:5000/mayx/blog http://119.28.73.80:5000/mayx/blog
http://194.60.231.252:3000/mayx/blog http://194.60.231.252:3000/mayx/blog
https://git.sleepingforest.co.uk/mayx/blog https://git.sleepingforest.co.uk/mayx/blog
@ -200,32 +186,24 @@ https://git.brb.homeip.net/mayx/blog
https://an360.top/mayx/blog https://an360.top/mayx/blog
https://git.agusandelnorte.gov.ph/mayx/blog https://git.agusandelnorte.gov.ph/mayx/blog
http://git.maiwd.cn:3000/mayx/blog http://git.maiwd.cn:3000/mayx/blog
https://git.reinoud.cloud/mayx/blog
https://gitea.chenxu2233.com/mayx/blog https://gitea.chenxu2233.com/mayx/blog
http://106.15.78.64:3000/mayx/blog http://106.15.78.64:3000/mayx/blog
http://hoenking.cn:3000/mayx/blog http://hoenking.cn:3000/mayx/blog
https://git.harddays.dev/mayx/blog
https://git.hantify.ru/mayx/blog
https://GIT.Agri-Sys.com/mayx/blog https://GIT.Agri-Sys.com/mayx/blog
http://8.156.68.150:3008/mayx/blog
http://47.113.96.20:3000/mayx/blog
https://gitea.anessen.xyz/mayx/blog https://gitea.anessen.xyz/mayx/blog
https://sengit.us/mayx/blog https://sengit.us/mayx/blog
https://git.cjcrace.io/mayx/blog https://git.cjcrace.io/mayx/blog
https://tee.eddykk.com/mayx/blog
https://git.yinbonet.cn/mayx/blog https://git.yinbonet.cn/mayx/blog
https://git.inkcore.cn/mayx/blog https://git.inkcore.cn/mayx/blog
http://47.98.129.193:3000/mayx/blog http://47.98.129.193:3000/mayx/blog
http://8.138.91.73:3000/mayx/blog http://8.138.91.73:3000/mayx/blog
https://git.wisder.net/mayx/blog https://git.wisder.net/mayx/blog
http://8.138.187.97:3000/mayx/blog http://8.138.187.97:3000/mayx/blog
https://gitea.potatox.net/mayx/blog
https://git2.ujin.tech/mayx/blog https://git2.ujin.tech/mayx/blog
http://git.joypetsisland.com/mayx/blog http://git.joypetsisland.com/mayx/blog
http://111.119.244.185:3000/mayx/blog http://111.119.244.185:3000/mayx/blog
http://110.41.179.36:13000/mayx/blog http://110.41.179.36:13000/mayx/blog
http://115.187.22.75:3000/mayx/blog http://115.187.22.75:3000/mayx/blog
http://163.223.13.95:3000/mayx/blog
https://git.chrisbeckstrom.com/mayx/blog https://git.chrisbeckstrom.com/mayx/blog
https://dev.zaphar.net/mayx/blog https://dev.zaphar.net/mayx/blog
https://git.moonwoou.com/mayx/blog https://git.moonwoou.com/mayx/blog
@ -251,7 +229,6 @@ http://47.94.103.75:3000/mayx/blog
http://gitea.danongshu.cn/mayx/blog http://gitea.danongshu.cn/mayx/blog
https://git.palagov.tv/mayx/blog https://git.palagov.tv/mayx/blog
http://139.196.201.231:3000/mayx/blog http://139.196.201.231:3000/mayx/blog
http://takway.ai:3000/mayx/blog
http://8.155.23.172:3000/mayx/blog http://8.155.23.172:3000/mayx/blog
https://git.influxfin.com/mayx/blog https://git.influxfin.com/mayx/blog
http://47.100.177.77:3000/mayx/blog http://47.100.177.77:3000/mayx/blog
@ -276,7 +253,6 @@ https://git.libx.ir/mayx/blog
https://git.u2.nu/mayx/blog https://git.u2.nu/mayx/blog
https://bk-house.synology.me:3081/mayx/blog https://bk-house.synology.me:3081/mayx/blog
http://123.57.95.66:9000/mayx/blog http://123.57.95.66:9000/mayx/blog
https://git.the-archive.xyz/mayx/blog
http://git.yjmt191314.com/mayx/blog http://git.yjmt191314.com/mayx/blog
https://git.sparrowcomm.com/mayx/blog https://git.sparrowcomm.com/mayx/blog
https://gitea.chaos-it.pl/mayx/blog https://gitea.chaos-it.pl/mayx/blog
@ -286,13 +262,10 @@ https://git.hubhoo.com/mayx/blog
https://git.ultra.pub/mayx/blog https://git.ultra.pub/mayx/blog
https://git.cloud13.de/mayx/blog https://git.cloud13.de/mayx/blog
https://gitea.visoftware.com.co/mayx/blog https://gitea.visoftware.com.co/mayx/blog
http://20.249.208.89:3000/mayx/blog
http://121.199.172.238:3000/mayx/blog http://121.199.172.238:3000/mayx/blog
http://27.124.12.222:3000/mayx/blog http://27.124.12.222:3000/mayx/blog
https://wzpmc.cn:3000/mayx/blog
https://saga.iao.ru:3043/mayx/blog https://saga.iao.ru:3043/mayx/blog
https://git.sayndone.ru/mayx/blog https://git.sayndone.ru/mayx/blog
https://git.kodors.net/mayx/blog
http://47.113.118.108:3000/mayx/blog http://47.113.118.108:3000/mayx/blog
https://gitea.hintsight.com/mayx/blog https://gitea.hintsight.com/mayx/blog
https://git.code-works.de/mayx/blog https://git.code-works.de/mayx/blog
@ -305,7 +278,6 @@ https://git.saintdoggie.org/mayx/blog
http://blackobelisk.xyz:3000/mayx/blog http://blackobelisk.xyz:3000/mayx/blog
https://git.dushes.keenetic.pro/mayx/blog https://git.dushes.keenetic.pro/mayx/blog
https://git.go-chat.ru/mayx/blog https://git.go-chat.ru/mayx/blog
https://gitt.vireoapp.com/mayx/blog
http://47.129.22.53:22345/mayx/blog http://47.129.22.53:22345/mayx/blog
https://git.tech.troyrc.com/mayx/blog https://git.tech.troyrc.com/mayx/blog
http://git.zkyspace.top/mayx/blog http://git.zkyspace.top/mayx/blog
@ -320,7 +292,6 @@ http://8.137.38.60:8201/mayx/blog
https://git.emoscape.org/mayx/blog https://git.emoscape.org/mayx/blog
http://112.74.106.216:3000/mayx/blog http://112.74.106.216:3000/mayx/blog
http://77.223.118.106:8081/mayx/blog http://77.223.118.106:8081/mayx/blog
http://frp-old.com:41879/mayx/blog
https://git.the-kn.com/mayx/blog https://git.the-kn.com/mayx/blog
https://git.campfiregg.ru/mayx/blog https://git.campfiregg.ru/mayx/blog
https://gitea.net50.ne.jp/mayx/blog https://gitea.net50.ne.jp/mayx/blog
@ -329,7 +300,6 @@ http://sinzero.xyz:3000/mayx/blog
http://69.10.53.202:3000/mayx/blog http://69.10.53.202:3000/mayx/blog
https://gitea.b54.co/mayx/blog https://gitea.b54.co/mayx/blog
https://git.matevi.sh/mayx/blog https://git.matevi.sh/mayx/blog
http://gitea-ui.shiba-server.fr:19000/mayx/blog
http://www.pcaidiy.cn:3000/mayx/blog http://www.pcaidiy.cn:3000/mayx/blog
https://code.tiantongsl.com/mayx/blog https://code.tiantongsl.com/mayx/blog
http://213.35.118.215:60001/mayx/blog http://213.35.118.215:60001/mayx/blog
@ -339,7 +309,6 @@ https://git.pasarex.com/mayx/blog
http://1.95.221.174:3000/mayx/blog http://1.95.221.174:3000/mayx/blog
https://git.wangxinlei.cn/mayx/blog https://git.wangxinlei.cn/mayx/blog
http://101.200.74.121:3000/mayx/blog http://101.200.74.121:3000/mayx/blog
https://potokobox-releases.prodduction.ru/mayx/blog
http://123.56.193.182:3000/mayx/blog http://123.56.193.182:3000/mayx/blog
https://git.akarpov.ru/mayx/blog https://git.akarpov.ru/mayx/blog
http://60.204.131.99:3000/mayx/blog http://60.204.131.99:3000/mayx/blog
@ -351,7 +320,6 @@ http://167.172.7.198:8081/mayx/blog
https://gitea.meetgu.ru/mayx/blog https://gitea.meetgu.ru/mayx/blog
http://8.134.253.108:3000/mayx/blog http://8.134.253.108:3000/mayx/blog
https://git.patrich.se/mayx/blog https://git.patrich.se/mayx/blog
http://47.251.18.130:3000/mayx/blog
http://116.236.50.103:8789/mayx/blog http://116.236.50.103:8789/mayx/blog
https://gitnto.innovationcampus.ru/mayx/blog https://gitnto.innovationcampus.ru/mayx/blog
https://git.paulll.cc/mayx/blog https://git.paulll.cc/mayx/blog
@ -360,7 +328,6 @@ https://gitea.reimann.ee/mayx/blog
http://109.74.197.189/mayx/blog http://109.74.197.189/mayx/blog
https://git.nussi.net/mayx/blog https://git.nussi.net/mayx/blog
https://git.thepain.dev/mayx/blog https://git.thepain.dev/mayx/blog
https://git.geobretagne.fr/mayx/blog
https://gitea.ultrasoft.cm/mayx/blog https://gitea.ultrasoft.cm/mayx/blog
http://94.224.160.69:7990/mayx/blog http://94.224.160.69:7990/mayx/blog
http://8.134.144.137:3000/mayx/blog http://8.134.144.137:3000/mayx/blog
@ -370,10 +337,8 @@ https://git.d4m13n.dev/mayx/blog
https://gitimpo.liara.run/mayx/blog https://gitimpo.liara.run/mayx/blog
https://git.needon.kr/mayx/blog https://git.needon.kr/mayx/blog
https://git.4lcap.com/mayx/blog https://git.4lcap.com/mayx/blog
https://gitea.bastiqui.com/mayx/blog
https://git.stit.tech/mayx/blog https://git.stit.tech/mayx/blog
https://git.wun.im/mayx/blog https://git.wun.im/mayx/blog
https://git.lichx.top/mayx/blog
https://www.9miao.fun:6839/mayx/blog https://www.9miao.fun:6839/mayx/blog
https://git.ssktv.vip/mayx/blog https://git.ssktv.vip/mayx/blog
https://git.autotion.net/mayx/blog https://git.autotion.net/mayx/blog
@ -451,7 +416,6 @@ https://lius.familyds.org:3000/mayx/blog
https://git.morozoff.pro/mayx/blog https://git.morozoff.pro/mayx/blog
https://gitea.questline.coop/mayx/blog https://gitea.questline.coop/mayx/blog
https://gitea.mpc-web.jp/mayx/blog https://gitea.mpc-web.jp/mayx/blog
https://git.roshanca.com/mayx/blog
https://git.poggerer.xyz/mayx/blog https://git.poggerer.xyz/mayx/blog
https://git.wisptales.org/mayx/blog https://git.wisptales.org/mayx/blog
https://git.peaksscrm.com/mayx/blog https://git.peaksscrm.com/mayx/blog
@ -479,7 +443,6 @@ http://git.chilidoginteractive.com:3000/mayx/blog
http://121.40.40.177:3000/mayx/blog http://121.40.40.177:3000/mayx/blog
http://118.31.223.224:3000/mayx/blog http://118.31.223.224:3000/mayx/blog
http://47.109.67.128:3000/mayx/blog http://47.109.67.128:3000/mayx/blog
https://git.enwatmon.de/mayx/blog
http://voicebot.digitalakademie-bw.de:3000/mayx/blog http://voicebot.digitalakademie-bw.de:3000/mayx/blog
https://gitea.services.gsd-srv.com/mayx/blog https://gitea.services.gsd-srv.com/mayx/blog
https://repo.divisilabs.com/mayx/blog https://repo.divisilabs.com/mayx/blog
@ -495,7 +458,6 @@ http://47.122.26.54:3000/mayx/blog
http://154.86.0.30:3000/mayx/blog http://154.86.0.30:3000/mayx/blog
http://139.224.196.148:3000/mayx/blog http://139.224.196.148:3000/mayx/blog
http://47.95.167.249:3000/mayx/blog http://47.95.167.249:3000/mayx/blog
https://www.enginx.dev/mayx/blog
http://gitea.dctpay.com/mayx/blog http://gitea.dctpay.com/mayx/blog
https://omegat.dmu-medical.de/mayx/blog https://omegat.dmu-medical.de/mayx/blog
http://52.23.128.62:3000/mayx/blog http://52.23.128.62:3000/mayx/blog
@ -503,7 +465,6 @@ http://85.214.41.219:49153/mayx/blog
http://6068688.xyz:3000/mayx/blog http://6068688.xyz:3000/mayx/blog
http://8.137.105.8:5530/mayx/blog http://8.137.105.8:5530/mayx/blog
https://git.881221.xyz/mayx/blog https://git.881221.xyz/mayx/blog
http://47.93.219.55:20080/mayx/blog
http://120.46.222.128:10021/mayx/blog http://120.46.222.128:10021/mayx/blog
http://39.106.86.127:3000/mayx/blog http://39.106.86.127:3000/mayx/blog
https://git.techspec.pro/mayx/blog https://git.techspec.pro/mayx/blog
@ -516,7 +477,6 @@ https://git.changenhealth.cn/mayx/blog
http://git.gkcorp.com.vn:16000/mayx/blog http://git.gkcorp.com.vn:16000/mayx/blog
http://47.111.17.177:3000/mayx/blog http://47.111.17.177:3000/mayx/blog
http://git.hnits360.com/mayx/blog http://git.hnits360.com/mayx/blog
https://git.bag-ltd.ru/mayx/blog
https://k0ki-dev.com/mayx/blog https://k0ki-dev.com/mayx/blog
http://110.42.45.89:2052/mayx/blog http://110.42.45.89:2052/mayx/blog
https://git.furcom.org/mayx/blog https://git.furcom.org/mayx/blog
@ -524,7 +484,6 @@ http://47.109.95.73:3000/mayx/blog
http://47.104.196.63:8418/mayx/blog http://47.104.196.63:8418/mayx/blog
https://git.mkubiak.com/mayx/blog https://git.mkubiak.com/mayx/blog
http://38.22.90.74:3000/mayx/blog http://38.22.90.74:3000/mayx/blog
https://git.unknwn.ru/mayx/blog
https://git.asdf.cafe/mayx/blog https://git.asdf.cafe/mayx/blog
http://8.133.240.249:3456/mayx/blog http://8.133.240.249:3456/mayx/blog
https://git.mista.ru/mayx/blog https://git.mista.ru/mayx/blog
@ -539,7 +498,6 @@ https://giteas.fullmooncyberworks.com/mayx/blog
http://47.112.118.149:10082/mayx/blog http://47.112.118.149:10082/mayx/blog
https://gitea.jobiglo.com/mayx/blog https://gitea.jobiglo.com/mayx/blog
https://gitea.rpg-librarium.de/mayx/blog https://gitea.rpg-librarium.de/mayx/blog
https://git.pheros.es/mayx/blog
https://git.juici.ly/mayx/blog https://git.juici.ly/mayx/blog
https://git.lkwplus.com/mayx/blog https://git.lkwplus.com/mayx/blog
http://begild.top:8418/mayx/blog http://begild.top:8418/mayx/blog
@ -588,3 +546,85 @@ https://git.ricecakecat.com/mayx/blog
https://git.mahaines.com/mayx/blog https://git.mahaines.com/mayx/blog
http://gitee.mrsang.cfd/mayx/blog http://gitee.mrsang.cfd/mayx/blog
https://gittea.biveki.ru/mayx/blog https://gittea.biveki.ru/mayx/blog
https://git.7milch.com/mayx/blog
https://gitea.marvinronk.com/mayx/blog
https://gitea.zmanplex.com/mayx/blog
https://git.hexdive.com/mayx/blog
http://139.224.250.209:3000/mayx/blog
https://vcc808.site/mayx/blog
https://git.sitenevis.com/mayx/blog
https://git.nightime.org/mayx/blog
https://dreamplacesai.de/mayx/blog
http://repo.bpo.technology/mayx/blog
https://git.soy.dog/mayx/blog
https://bachner.synology.me:10002/mayx/blog
https://git.cool2645.com/mayx/blog
https://gitea.codedbycaleb.com/mayx/blog
https://gitea.jludwig.net/mayx/blog
https://git.z1.mk/mayx/blog
http://185.87.111.46:3000/mayx/blog
http://suncheng.asia:14200/mayx/blog
https://git.sorogon.eu/mayx/blog
http://1.94.13.224:9080/mayx/blog
https://git.manabo.org/mayx/blog
https://auric-org.org/mayx/blog
https://git.git-happens.de/mayx/blog
https://gitea.seanomad.ru/mayx/blog
http://47.104.241.192:19999/mayx/blog
http://47.105.61.58:3000/mayx/blog
https://git.memosnag.com/mayx/blog
http://tdss.website:801/mayx/blog
https://gitea.wenpang.asia/mayx/blog
http://101.35.183.241/mayx/blog
https://gitea.quiztimes.nl/mayx/blog
http://106.14.189.125:3000/mayx/blog
https://git.hundseth.com/mayx/blog
https://git.xming.cloud/mayx/blog
https://travgit.guillorystack.com/mayx/blog
http://gitea.coderpath.com/mayx/blog
https://gitea.thanh0x.com/mayx/blog
http://175.198.180.19:3000/mayx/blog
https://gitea.albanmary.com/mayx/blog
http://ngtools.cn:53000/mayx/blog
https://git.hantify.ru/mayx/blog
https://git.unpas.dev/mayx/blog
http://43.136.169.169:3000/mayx/blog
http://121.196.213.68:3000/mayx/blog
https://git.vereint-digital.de/mayx/blog
https://git.advarna.fr/mayx/blog
http://111.198.4.69:8092/mayx/blog
https://git.lakaweb.com/mayx/blog
https://git.kitti.ac.th/mayx/blog
http://106.15.233.223:3001/mayx/blog
http://giteastaraire.vip.cpolar.cn/mayx/blog
https://forge.coreymclark.com/mayx/blog
http://ems.iclematis.com:30000/mayx/blog
https://git.micahmoore.io/mayx/blog
https://git.zlyum.com/mayx/blog
https://git.alexerdei.co.uk/mayx/blog
https://git.aelhost.com/mayx/blog
https://schokigeschmack.de/mayx/blog
https://git.anatid.net/mayx/blog
https://catsdev.com/mayx/blog
https://git.lekai.info/mayx/blog
https://git.avclick.ru/mayx/blog
http://135.235.225.198:3000/mayx/blog
http://giteaiposeek.cn/mayx/blog
https://git.zimerguz.net/mayx/blog
https://git.cukak.com/mayx/blog
http://farsinot.ir:3000/mayx/blog
https://gitea.sosaley.in/mayx/blog
https://gitea.vidoks.fr/mayx/blog
https://dev.ncot.uk/mayx/blog
https://git.sick.earth/mayx/blog
https://git.ncue.net/mayx/blog
https://gitea.rbpsw.net/mayx/blog
https://git.prayujt.com/mayx/blog
http://121.199.11.156:3000/mayx/blog
http://www.sh-hpg.com:3000/mayx/blog
https://git.galaxylabs.ca/mayx/blog
https://gitlab.n8n-store.xyz/mayx/blog
https://forgejo.win/mayx/blog
https://gitea.katiethe.dev/mayx/blog
https://gitea.ai-demo.duckdns.org/mayx/blog
https://git0.zpqrtbnk.net/mayx/blog

1 repo_url
9 https://git.pixie.town/mayx/mayx
10 https://cgit.tilde.town/~mayx/blog
11 https://gitlab.haskell.org/mayx/mayx
https://git.gammaspectra.live/Mayx/blog
12 https://pagure.io/fork/mabbs/Blog
13 https://repo2.serv00.com/git/pub/Mayx/mayx/
14 https://git.tea-assets.com/mayx/blog
35 https://git.ykonkov.com/mayx/blog
36 http://116.62.245.34:3000/mayx/blog
37 https://git.johann-brauer.de/mayx/blog
https://git.barneo-tech.com/mayx/blog
38 https://git.shaunmcpeck.com/mayx/blog
39 http://1.6.141.109:3000/mayx/blog
40 http://52.28.156.42/mayx/blog
46 https://git.lolpro11.me/mayx/blog
47 https://git.unglab.com/mayx/blog
48 https://git.empirica.pro/mayx/blog
http://xiaowangnas.com:8418/mayx/blog
49 http://47.115.203.168:3000/mayx/blog
50 http://www.gitea.zhangc.top:3000/mayx/blog
51 https://git.chistyakov-it.ru/mayx/blog
60 https://nucleation.fusion.bref.cool/mayx/blog
61 https://gitea.l2reworld.com/mayx/blog
62 https://git.bp-web.app/mayx/blog
https://git.carinae.org/mayx/blog
63 http://47.103.91.160:50903/mayx/blog
64 https://mygit.iexercice.com/mayx/blog
65 http://162.215.134.149:4000/mayx/blog
81 https://gitea.pickalurv.com/mayx/blog
82 http://183.239.197.12:10803/mayx/blog
83 https://git.zeroplay.io/mayx/blog
https://vpgs.pro/mayx/blog
84 https://git.successkaoyan.com/mayx/blog
85 https://git.veydlin.com/mayx/blog
https://git.dcircus.com/mayx/blog
86 https://gitea.bitshift.us/mayx/blog
87 http://114.55.134.197:3000/mayx/blog
88 http://139.129.25.251:3000/mayx/blog
105 https://git.duplanet.ovh/mayx/blog
106 http://Shiningon.top/mayx/blog
107 http://wsygitea.top/mayx/blog
https://git.ofdl.tools/mayx/blog
http://precious.harpy.faith/mayx/blog
108 https://git.yardtech.ru/mayx/blog
109 http://69.62.77.234:8888/mayx/blog
110 https://gitea.bake.systems/mayx/blog
124 http://rack1.raincs.cc:20253/mayx/blog
125 https://git.repo.in.net/mayx/blog
126 https://git.dihe.moe/mayx/blog
https://git.fracturedcode.net/mayx/blog
127 http://47.113.231.74:3000/mayx/blog
128 https://gitea.belanjaparts.com/mayx/blog
129 http://185.208.225.190:3000/mayx/blog
152 https://git.dbfmp.cn/mayx/blog
153 http://103.231.8.120/mayx/blog
154 https://gitea.jasonstolle.com/mayx/blog
https://gitea.dokm.xyz/mayx/blog
https://nemoserver.iict.bas.bg/mayx/blog
155 https://git.istsoft.ru/mayx/blog
156 http://8.134.61.107:3000/mayx/blog
157 http://47.107.88.161:3000/mayx/blog
164 https://gitea.irons.nz/mayx/blog
165 https://gitea.madf12.com/mayx/blog
166 http://8.134.104.234:3000/mayx/blog
http://47.99.142.152:3000/mayx/blog
167 http://45.45.238.98:3000/mayx/blog
168 http://git.ugohous.com/mayx/blog
169 https://git.vce.de/mayx/blog
170 https://gitea.carmon.co.kr/mayx/blog
171 http://142.171.47.170:3000/mayx/blog
172 https://git.aion.bi/mayx/blog
https://git.skillmad.ru/mayx/blog
173 https://git.werkraum-karlsruhe.org/mayx/blog
174 http://111.231.146.230:8418/mayx/blog
175 https://git.winscloud.net/mayx/blog
176 https://git.pwaapp.cc/mayx/blog
177 http://188.245.99.186:3000/mayx/blog
https://sources.krechet.tech/mayx/blog
178 http://119.28.73.80:5000/mayx/blog
179 http://194.60.231.252:3000/mayx/blog
180 https://git.sleepingforest.co.uk/mayx/blog
186 https://an360.top/mayx/blog
187 https://git.agusandelnorte.gov.ph/mayx/blog
188 http://git.maiwd.cn:3000/mayx/blog
https://git.reinoud.cloud/mayx/blog
189 https://gitea.chenxu2233.com/mayx/blog
190 http://106.15.78.64:3000/mayx/blog
191 http://hoenking.cn:3000/mayx/blog
https://git.harddays.dev/mayx/blog
https://git.hantify.ru/mayx/blog
192 https://GIT.Agri-Sys.com/mayx/blog
http://8.156.68.150:3008/mayx/blog
http://47.113.96.20:3000/mayx/blog
193 https://gitea.anessen.xyz/mayx/blog
194 https://sengit.us/mayx/blog
195 https://git.cjcrace.io/mayx/blog
https://tee.eddykk.com/mayx/blog
196 https://git.yinbonet.cn/mayx/blog
197 https://git.inkcore.cn/mayx/blog
198 http://47.98.129.193:3000/mayx/blog
199 http://8.138.91.73:3000/mayx/blog
200 https://git.wisder.net/mayx/blog
201 http://8.138.187.97:3000/mayx/blog
https://gitea.potatox.net/mayx/blog
202 https://git2.ujin.tech/mayx/blog
203 http://git.joypetsisland.com/mayx/blog
204 http://111.119.244.185:3000/mayx/blog
205 http://110.41.179.36:13000/mayx/blog
206 http://115.187.22.75:3000/mayx/blog
http://163.223.13.95:3000/mayx/blog
207 https://git.chrisbeckstrom.com/mayx/blog
208 https://dev.zaphar.net/mayx/blog
209 https://git.moonwoou.com/mayx/blog
229 http://gitea.danongshu.cn/mayx/blog
230 https://git.palagov.tv/mayx/blog
231 http://139.196.201.231:3000/mayx/blog
http://takway.ai:3000/mayx/blog
232 http://8.155.23.172:3000/mayx/blog
233 https://git.influxfin.com/mayx/blog
234 http://47.100.177.77:3000/mayx/blog
253 https://git.u2.nu/mayx/blog
254 https://bk-house.synology.me:3081/mayx/blog
255 http://123.57.95.66:9000/mayx/blog
https://git.the-archive.xyz/mayx/blog
256 http://git.yjmt191314.com/mayx/blog
257 https://git.sparrowcomm.com/mayx/blog
258 https://gitea.chaos-it.pl/mayx/blog
262 https://git.ultra.pub/mayx/blog
263 https://git.cloud13.de/mayx/blog
264 https://gitea.visoftware.com.co/mayx/blog
http://20.249.208.89:3000/mayx/blog
265 http://121.199.172.238:3000/mayx/blog
266 http://27.124.12.222:3000/mayx/blog
https://wzpmc.cn:3000/mayx/blog
267 https://saga.iao.ru:3043/mayx/blog
268 https://git.sayndone.ru/mayx/blog
https://git.kodors.net/mayx/blog
269 http://47.113.118.108:3000/mayx/blog
270 https://gitea.hintsight.com/mayx/blog
271 https://git.code-works.de/mayx/blog
278 http://blackobelisk.xyz:3000/mayx/blog
279 https://git.dushes.keenetic.pro/mayx/blog
280 https://git.go-chat.ru/mayx/blog
https://gitt.vireoapp.com/mayx/blog
281 http://47.129.22.53:22345/mayx/blog
282 https://git.tech.troyrc.com/mayx/blog
283 http://git.zkyspace.top/mayx/blog
292 https://git.emoscape.org/mayx/blog
293 http://112.74.106.216:3000/mayx/blog
294 http://77.223.118.106:8081/mayx/blog
http://frp-old.com:41879/mayx/blog
295 https://git.the-kn.com/mayx/blog
296 https://git.campfiregg.ru/mayx/blog
297 https://gitea.net50.ne.jp/mayx/blog
300 http://69.10.53.202:3000/mayx/blog
301 https://gitea.b54.co/mayx/blog
302 https://git.matevi.sh/mayx/blog
http://gitea-ui.shiba-server.fr:19000/mayx/blog
303 http://www.pcaidiy.cn:3000/mayx/blog
304 https://code.tiantongsl.com/mayx/blog
305 http://213.35.118.215:60001/mayx/blog
309 http://1.95.221.174:3000/mayx/blog
310 https://git.wangxinlei.cn/mayx/blog
311 http://101.200.74.121:3000/mayx/blog
https://potokobox-releases.prodduction.ru/mayx/blog
312 http://123.56.193.182:3000/mayx/blog
313 https://git.akarpov.ru/mayx/blog
314 http://60.204.131.99:3000/mayx/blog
320 https://gitea.meetgu.ru/mayx/blog
321 http://8.134.253.108:3000/mayx/blog
322 https://git.patrich.se/mayx/blog
http://47.251.18.130:3000/mayx/blog
323 http://116.236.50.103:8789/mayx/blog
324 https://gitnto.innovationcampus.ru/mayx/blog
325 https://git.paulll.cc/mayx/blog
328 http://109.74.197.189/mayx/blog
329 https://git.nussi.net/mayx/blog
330 https://git.thepain.dev/mayx/blog
https://git.geobretagne.fr/mayx/blog
331 https://gitea.ultrasoft.cm/mayx/blog
332 http://94.224.160.69:7990/mayx/blog
333 http://8.134.144.137:3000/mayx/blog
337 https://gitimpo.liara.run/mayx/blog
338 https://git.needon.kr/mayx/blog
339 https://git.4lcap.com/mayx/blog
https://gitea.bastiqui.com/mayx/blog
340 https://git.stit.tech/mayx/blog
341 https://git.wun.im/mayx/blog
https://git.lichx.top/mayx/blog
342 https://www.9miao.fun:6839/mayx/blog
343 https://git.ssktv.vip/mayx/blog
344 https://git.autotion.net/mayx/blog
416 https://git.morozoff.pro/mayx/blog
417 https://gitea.questline.coop/mayx/blog
418 https://gitea.mpc-web.jp/mayx/blog
https://git.roshanca.com/mayx/blog
419 https://git.poggerer.xyz/mayx/blog
420 https://git.wisptales.org/mayx/blog
421 https://git.peaksscrm.com/mayx/blog
443 http://121.40.40.177:3000/mayx/blog
444 http://118.31.223.224:3000/mayx/blog
445 http://47.109.67.128:3000/mayx/blog
https://git.enwatmon.de/mayx/blog
446 http://voicebot.digitalakademie-bw.de:3000/mayx/blog
447 https://gitea.services.gsd-srv.com/mayx/blog
448 https://repo.divisilabs.com/mayx/blog
458 http://154.86.0.30:3000/mayx/blog
459 http://139.224.196.148:3000/mayx/blog
460 http://47.95.167.249:3000/mayx/blog
https://www.enginx.dev/mayx/blog
461 http://gitea.dctpay.com/mayx/blog
462 https://omegat.dmu-medical.de/mayx/blog
463 http://52.23.128.62:3000/mayx/blog
465 http://6068688.xyz:3000/mayx/blog
466 http://8.137.105.8:5530/mayx/blog
467 https://git.881221.xyz/mayx/blog
http://47.93.219.55:20080/mayx/blog
468 http://120.46.222.128:10021/mayx/blog
469 http://39.106.86.127:3000/mayx/blog
470 https://git.techspec.pro/mayx/blog
477 http://git.gkcorp.com.vn:16000/mayx/blog
478 http://47.111.17.177:3000/mayx/blog
479 http://git.hnits360.com/mayx/blog
https://git.bag-ltd.ru/mayx/blog
480 https://k0ki-dev.com/mayx/blog
481 http://110.42.45.89:2052/mayx/blog
482 https://git.furcom.org/mayx/blog
484 http://47.104.196.63:8418/mayx/blog
485 https://git.mkubiak.com/mayx/blog
486 http://38.22.90.74:3000/mayx/blog
https://git.unknwn.ru/mayx/blog
487 https://git.asdf.cafe/mayx/blog
488 http://8.133.240.249:3456/mayx/blog
489 https://git.mista.ru/mayx/blog
498 http://47.112.118.149:10082/mayx/blog
499 https://gitea.jobiglo.com/mayx/blog
500 https://gitea.rpg-librarium.de/mayx/blog
https://git.pheros.es/mayx/blog
501 https://git.juici.ly/mayx/blog
502 https://git.lkwplus.com/mayx/blog
503 http://begild.top:8418/mayx/blog
546 https://git.mahaines.com/mayx/blog
547 http://gitee.mrsang.cfd/mayx/blog
548 https://gittea.biveki.ru/mayx/blog
549 https://git.7milch.com/mayx/blog
550 https://gitea.marvinronk.com/mayx/blog
551 https://gitea.zmanplex.com/mayx/blog
552 https://git.hexdive.com/mayx/blog
553 http://139.224.250.209:3000/mayx/blog
554 https://vcc808.site/mayx/blog
555 https://git.sitenevis.com/mayx/blog
556 https://git.nightime.org/mayx/blog
557 https://dreamplacesai.de/mayx/blog
558 http://repo.bpo.technology/mayx/blog
559 https://git.soy.dog/mayx/blog
560 https://bachner.synology.me:10002/mayx/blog
561 https://git.cool2645.com/mayx/blog
562 https://gitea.codedbycaleb.com/mayx/blog
563 https://gitea.jludwig.net/mayx/blog
564 https://git.z1.mk/mayx/blog
565 http://185.87.111.46:3000/mayx/blog
566 http://suncheng.asia:14200/mayx/blog
567 https://git.sorogon.eu/mayx/blog
568 http://1.94.13.224:9080/mayx/blog
569 https://git.manabo.org/mayx/blog
570 https://auric-org.org/mayx/blog
571 https://git.git-happens.de/mayx/blog
572 https://gitea.seanomad.ru/mayx/blog
573 http://47.104.241.192:19999/mayx/blog
574 http://47.105.61.58:3000/mayx/blog
575 https://git.memosnag.com/mayx/blog
576 http://tdss.website:801/mayx/blog
577 https://gitea.wenpang.asia/mayx/blog
578 http://101.35.183.241/mayx/blog
579 https://gitea.quiztimes.nl/mayx/blog
580 http://106.14.189.125:3000/mayx/blog
581 https://git.hundseth.com/mayx/blog
582 https://git.xming.cloud/mayx/blog
583 https://travgit.guillorystack.com/mayx/blog
584 http://gitea.coderpath.com/mayx/blog
585 https://gitea.thanh0x.com/mayx/blog
586 http://175.198.180.19:3000/mayx/blog
587 https://gitea.albanmary.com/mayx/blog
588 http://ngtools.cn:53000/mayx/blog
589 https://git.hantify.ru/mayx/blog
590 https://git.unpas.dev/mayx/blog
591 http://43.136.169.169:3000/mayx/blog
592 http://121.196.213.68:3000/mayx/blog
593 https://git.vereint-digital.de/mayx/blog
594 https://git.advarna.fr/mayx/blog
595 http://111.198.4.69:8092/mayx/blog
596 https://git.lakaweb.com/mayx/blog
597 https://git.kitti.ac.th/mayx/blog
598 http://106.15.233.223:3001/mayx/blog
599 http://giteastaraire.vip.cpolar.cn/mayx/blog
600 https://forge.coreymclark.com/mayx/blog
601 http://ems.iclematis.com:30000/mayx/blog
602 https://git.micahmoore.io/mayx/blog
603 https://git.zlyum.com/mayx/blog
604 https://git.alexerdei.co.uk/mayx/blog
605 https://git.aelhost.com/mayx/blog
606 https://schokigeschmack.de/mayx/blog
607 https://git.anatid.net/mayx/blog
608 https://catsdev.com/mayx/blog
609 https://git.lekai.info/mayx/blog
610 https://git.avclick.ru/mayx/blog
611 http://135.235.225.198:3000/mayx/blog
612 http://giteaiposeek.cn/mayx/blog
613 https://git.zimerguz.net/mayx/blog
614 https://git.cukak.com/mayx/blog
615 http://farsinot.ir:3000/mayx/blog
616 https://gitea.sosaley.in/mayx/blog
617 https://gitea.vidoks.fr/mayx/blog
618 https://dev.ncot.uk/mayx/blog
619 https://git.sick.earth/mayx/blog
620 https://git.ncue.net/mayx/blog
621 https://gitea.rbpsw.net/mayx/blog
622 https://git.prayujt.com/mayx/blog
623 http://121.199.11.156:3000/mayx/blog
624 http://www.sh-hpg.com:3000/mayx/blog
625 https://git.galaxylabs.ca/mayx/blog
626 https://gitlab.n8n-store.xyz/mayx/blog
627 https://forgejo.win/mayx/blog
628 https://gitea.katiethe.dev/mayx/blog
629 https://gitea.ai-demo.duckdns.org/mayx/blog
630 https://git0.zpqrtbnk.net/mayx/blog

View File

@ -0,0 +1,29 @@
---
layout: post
title: 一次找回GitHub上被删除仓库的经历
tags: [GitHub, Git, 代码恢复, 软件存档]
---
在GitHub中寻找踪迹也许是非常简单的事情……<!--more-->
# 起因
前段时间,有人和我聊天的时候提到了[Brainfuck](https://esolangs.org/wiki/Brainfuck)语言,让我回想起了高中时写的[演讲稿](/%E6%BC%94%E8%AE%B2%E7%A8%BF/2018/06/20/Coding.html)。那时候我在演讲时也介绍了Brainfuck语言。对于Brainfuck的解释器[各种语言都可以实现](https://rosettacode.org/wiki/RCBF)不过我当时为了方便理解用了一个在GitHub Pages上的网站用可视化的方式演示了它的运行过程效果很不错。现在既然聊到了自然就想分享一下这个[演示的网站](https://fatiherikli.github.io/brainfuck-visualizer/)但我正想打开时发现网站已经404了😰。
在GitHub Pages上的网站都有对应的仓库现在不仅原仓库消失了连作者的[首页](https://github.com/fatiherikli)都打不开看样子是完全退出GitHub了……那么我想找到这个网站的想法就无法实现了吗不过GitHub有些有意思的特性也许能帮助我找回这个网站。
# GitHub的特性
在GitHub中一个普通的仓库可能没有什么特别的也许就是服务器上的一个文件夹。但是当仓库被其他人Fork的时候就不一样了在执行Fork时显然GitHub不会完整复制整个仓库。否则同一个仓库在服务器上会占用双倍空间这显然不合理。另外想想Git的结构它由提交对象和分支指针构成每次提交都有唯一的Hash值且不会冲突。因此可以推测GitHub在实现Fork时所有被Fork的仓库可能共享同一个对象库而每个用户仓库只保存指针这样所有仓库只会占用增量空间而不会存储重复内容。
但这样也会带来一个问题首先因为很多人可能要共用一部分对象所以也很难确认对象的所有权而且也因为这个原因所有的对象要能被所有人访问。因此在整个Fork网络中只要有一个仓库存在GitHub就必须保留所有的对象而且每个仓库都能访问这个网络中所有的对象。为了验证这一点我们可以用最知名的[Linux内核仓库](https://github.com/torvalds/linux)做个示例。
首先对Linux仓库进行Fork然后我们可以随便做一些改动比如在README中写“Linux已经被我占领了😆”之类的内容提交到自己的仓库并且记下提交的Hash值接下来就可以把自己的仓库删掉了。如果上面的猜想是正确的那么在这个Fork网络中的任何一个仓库查看我刚刚的提交应该都可以于是我直接在主仓库拼上了[提交的Hash值](https://github.com/torvalds/linux/tree/78e1d0446b94012da8639aa2b157d4f2dee481ce)(顺便一说只要值唯一,和其他的提交不冲突,[短的Hash值](https://github.com/torvalds/linux/tree/78e1d044)也可以果不其然能找到刚刚修改的内容这样一来只要GitHub和任意一个Linux仓库的Fork还存在这个提交就永远存在了😝。
# 找回仓库
那么接下来找回之前网站的方案就很简单了我只要找到网站仓库的任意一个Fork然后只要知道最新的提交Hash我就可以还原最新的仓库了。Fork倒是好找随便搜一下[就能找到一个](https://github.com/ashupk/brainfuck-visualizer)。这个Fork的最新提交是2016年但要想找到我当年演讲的版本至少到2018年之后。不过这个Hash值也不太好找虽然理论上爆破短Hash值也可以但是感觉太麻烦了没有那个必要所以我干脆直接去互联网档案馆看看能找到的[最新的仓库页面](https://web.archive.org/web/20201229125043/https://github.com/fatiherikli/brainfuck-visualizer/)吧这样我就能找到它的Hash值了然后我再把Fork仓库的地址和Hash拼到一起就看得到最新代码了。
当然仅仅看到代码还不够。我想Fork这个项目并在自己的GitHub Pages上部署一份。有没有什么好办法可以将我仓库的HEAD指针指向最新的提交呢其实很简单首先我要Fork这个Fork仓库然后Clone我的仓库到本地。不过此时Clone下来的仓库并不包含GitHub上完整的对象库因此直接checkout或reset是不行的。这时Hash值就派上用场了通过fetch拉取对应提交后就可以进行上述操作。具体命令如下
```bash
git fetch origin <commit-hash>
git reset --hard <commit-hash>
git push origin master
```
最终我就获得了包含[最新代码](https://github.com/Mabbs/brainfuck-visualizer)的[Brainfuck可视化演示](https://mabbs.github.io/brainfuck-visualizer/)了🎉。
# 结局
后来我才知道,原来有一个专门的组织[Software Heritage](https://archive.softwareheritage.org)会保存所有代码,根本没必要搞这些花里胡哨的操作😂,像这个仓库也是能很轻易在[上面](https://archive.softwareheritage.org/browse/origin/directory/?origin_url=https://github.com/fatiherikli/brainfuck-visualizer)找到这下以后知道了再遇到类似情况就可以直接去Software Heritage查找而不必在互联网档案馆上找线索瞎折腾了🤣。

View File

@ -67,6 +67,7 @@ image: https://screenshot.mayx.eu.org/
<p> <p>
<a href="/service.html">Mayx的公开服务</a><br /> <a href="/service.html">Mayx的公开服务</a><br />
凯露&危险生存( <a href="{% unless site.github %}https://mabbs.github.io{% endunless %}/karyl-yabaival/?cn">CHS</a> | <a href="{% unless site.github %}https://mabbs.github.io{% endunless %}/karyl-yabaival/">JA</a> | <a href="{% unless site.github %}https://mabbs.github.io{% endunless %}/karyl-yabaival/?kr">KO</a> <br /> 凯露&危险生存( <a href="{% unless site.github %}https://mabbs.github.io{% endunless %}/karyl-yabaival/?cn">CHS</a> | <a href="{% unless site.github %}https://mabbs.github.io{% endunless %}/karyl-yabaival/">JA</a> | <a href="{% unless site.github %}https://mabbs.github.io{% endunless %}/karyl-yabaival/?kr">KO</a> <br />
<a href="{% unless site.github %}https://mabbs.github.io{% endunless %}/brainfuck-visualizer/">Brainfuck可视化演示</a><br />
<a href="/message.html">留言板</a><br /> <a href="/message.html">留言板</a><br />
<a href="/links.html">Links</a><br /> <a href="/links.html">Links</a><br />
<a href="/proxylist.html">代理列表</a><br /> <a href="/proxylist.html">代理列表</a><br />