PrL的负能量场

  1. 使用SourceTree来回退代码到某次提交方法步骤----7 切换到sourceTree界面,鼠标选中将要回退到的那个历史提交记录![](

    使用SourceTree来回退代码到某次提交

    方法步骤
    ----

    7 切换到sourceTree界面,鼠标选中将要回退到的那个历史提交记录

    ![](https://i-blog.csdnimg.cn/blog_migrate/876db60b87fdae9a40bb3410728a781c.png)

    8 右键-》重置当前分支到此次提交

    ![](https://i-blog.csdnimg.cn/blog_migrate/e835d7e4248e42563b4cdcc8f1064f6a.png)

    9 在弹窗中 使用模式选择 强行合并--丢弃所有改动过的工作副本,点击确定

    ![](https://i-blog.csdnimg.cn/blog_migrate/f9eb26303d3991d46d9fd64b02458d91.png)

    10 等待重置完,可以看到本地仓库的develop分支已回退到 “提取 release分支的某次提交到 develop分支”提交。而且本地仓库落后远程仓库两个提交记录。

    ![](https://i-blog.csdnimg.cn/blog_migrate/8743d7b25002570aa37eafecdb01ae98.png)

    11 依然是同样的操作。选中最新的提交历史记录右键-》重置当前分支到此次提交

    ![](https://i-blog.csdnimg.cn/blog_migrate/ea8eba594e8c68f8ba03b6d1df9f218c.png)

    12 这次选的使用模式是软合并 – 保持所有本地改动,点击确定

     ![](https://i-blog.csdnimg.cn/blog_migrate/ae476fdd2c152400cdc21687799585b7.png)

    13 等待重置完。发现本地仓库开发分支已和远程仓库开发分支同步。这个结果似乎看起来两次重置抵消了一样,代码版本没有发生任何的变化。实际并不是这样,这就是神奇之处,会让你恍然大悟的地方。

    ![](https://i-blog.csdnimg.cn/blog_migrate/8aba48eb1463d4261a7b1d63c7fff48b.png)

    14 切换到文件状态,可以看到本地工作副本多了一个test1.txt的改动文件,而且改动文件的内容正好删除了 新增test1和新增test2两次提交所修改的内容。

    ![](https://i-blog.csdnimg.cn/blog_migrate/11b9e5a387322cc326a0cfbf7cc58104.png)

    15 那么,剩下的操作只需将这个改动文件提交并推送到远程仓库,是不是就OK了?

    下面尝试,提交并推送该改动文件。如下图,推送之后的效果。

    ![](https://i-blog.csdnimg.cn/blog_migrate/4a5265ea53a9d262b3070eacc6a893fe.png)

    16 如下图,可以看出本地工作副本和远程仓库的 add test1 和 add test2内容都被回退掉了。也就是代码版本从内容上回退到了某个历史版本,但是提交历史记录并没有回退。在提交记录已经同步到远程分支情况下,Git只会增加提交历史记录,是不会回退或删除提交记录的。我们所说的回退都是指的回退内容。

    ![](https://i-blog.csdnimg.cn/blog_migrate/86c727236768edaf36e1717c901283d4.png)

    注意事项
    ----

    回退指的是内容的回退,而不是提交记录的回退

    #programming Link preview image

  2. 今天第一次打造了docker image, 通过 github action!起因是之前用的ghmodelapi这个镜像没有arm的

    今天第一次打造了docker image, 通过 github action!

    起因是之前用的ghmodelapi这个镜像没有arm的。

    在容器内找到了他的dockerfile、程序源代码等,交给ai来写一个github action的workflow yaml. 因为github action支持arm架构的runner,所以这就太合适了。


    最后编译的很棒。也push到了ghcr上. 那么至此,gh model balancer从chi迁移到本地.3了。

    以前我不会写workflow yaml, 而迟迟阻止我用action,现在有了ai,用action就没有阻碍了。。

    以前dockerfile我只能读不会写,现在有了ai,也没有阻碍了。。。


    我现在还不知道ai到底是起到了正作用还是反作用。

    让我可以尝试更多的事儿 但是我也变懒了


    #ai #programming

  3. https://deepwiki.com/search/pushplus-forktelegrambot-pytho_4e416c58-4e4e-42f8-b182-e8a96355ee39
    —-



    根据你的需求,你想要在现有的SGCC电力监控项目中添加Telegram Bot和企业微信机器人的推送支持。

    ## 当前推送系统分析

    目前项目只支持Pushplus推送,推送逻辑位于`scripts/sensor_updator.py`的`balance_notify`方法中。 [1](#0-0) 当电费余额低于设定阈值时,系统会通过Pushplus发送通知。

    ## 需要修改的文件和位置

    ### 1. 环境变量配置文件

    你需要在`example.env`文件中添加新的环境变量: [2](#0-1)

    建议在现有的Pushplus配置后添加:
    # Telegram Bot 配置
    TG_BOT_TOKEN=your_bot_token
    TG_USER_ID=your_user_id
    TG_API_HOST=https://api.telegram.org  # 可选,自定义API地址
    TG_PROXY_HOST=proxy_host  # 可选,代理主机
    TG_PROXY_PORT=proxy_port  # 可选,代理端口
    TG_PROXY_AUTH=user:pass   # 可选,代理认证
    
    # 企业微信机器人配置
    QYWX_KEY=your_webhook_key
    QYWX_ORIGIN=https://qyapi.weixin.qq.com  # 可选,自定义API地址


    ### 2. 主配置加载逻辑

    在`scripts/main.py`中,你需要在两个地方添加新的环境变量加载:

    - Home Assistant Add-on模式(`options.json`): [3](#0-2)
    - Docker模式(`.env`文件): [4](#0-3)

    ### 3. 推送逻辑修改

    主要修改`scripts/sensor_updator.py`中的推送逻辑:

    #### 在`init`方法中添加新的配置读取: [5](#0-4)

    #### 修改`balance_notify`方法: [1](#0-0)

    你需要将现有的单一Pushplus推送逻辑扩展为支持多种推送方式的逻辑。

    ## 推荐的实现方案

    1. 创建推送工厂模式**:在`sensor_updator.py`中添加你提供的`wecom_bot`和`telegram_bot`函数
    2. **修改`balance_notify`方法**:根据配置的环境变量决定使用哪种推送方式
    3. **支持多推送并行**:可以同时启用多种推送方式

    ## 配置优先级

    根据现有代码结构,配置加载的优先级是: [6](#0-5)
    1. 如果存在`/data/options.json`(Home Assistant Add-on模式)
    2. 否则使用环境变量(Docker模式)

    你需要在两种配置方式中都添加对应的新环境变量支持。

    **Notes


    当前项目的推送功能集中在`SensorUpdator`类中,通过`RECHARGE_NOTIFY`环境变量控制是否启用推送。你的修改应该保持这个架构,只是扩展推送方式的选择。记得在`DataFetcher.fetch()`方法中,`SensorUpdator`实例会为每个用户ID调用推送检查。 [7](#0-6)

    Wiki pages you might want to explore:
    - [Overview (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#1)
    - [Core Components (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#4)

  4. 才学习到了swap不仅仅是存在硬盘或者rom里的文件,也有可能是zram

    才学习到了swap不仅仅是存在硬盘或者rom里的文件,也有可能是zram。

    zram是在ram中划走一部分并且进行压缩。一般可以提供划走空间的1.5~2倍空间。所以是牺牲cpu性能扩展了内存。

    看了一下armbian默认开的是zram,不是文件swap。默认会划走ram的50%

    之前寻思着比较伤害rom,看来是我误解了。

    一般是在/etc/default/armbian-zram-config来配置


    #linux

  5. 自建deep researchGitHub - u14app/deep-research: Use any LLMs (Large Language Models) for Deep Research. Support SSE API and MCP server.

    自建deep research


    GitHub - u14app/deep-research: Use any LLMs (Large Language Models) for Deep Research. Support SSE API and MCP server.
    https://github.com/u14app/deep-research

  6. Claude Code 用了 30 天,我再也回不去从零手写代码了 | 编程正式从「胶卷时代」正式迈入「数码时代」| Vibe Coding

    Claude Code 用了 30 天,我再也回不去从零手写代码了 | 编程正式从「胶卷时代」正式迈入「数码时代」| Vibe Coding
    https://youtube.com/watch?v=sOvi9Iu1Dq8&si=4BH9Ik7_ULewELeF

  7. 关于sgcc new项目的修改解析

    关于sgcc new项目的修改解析

    https://deepwiki.com/search/_4a5e2320-f205-4630-9e97-805cb25614ca

    是的,这个程序确实存在一个保持一致运行的主循环。 [1](#0-0) 
    
    ## 主循环实现
    
    程序的主循环位于 main() 函数中,使用 schedule 库来管理定时任务: [2](#0-1) 
    
    主循环的核心逻辑非常简单: [1](#0-0) 
    
    这个无限循环每秒检查一次是否有待执行的定时任务,如果有就执行。
    
    ## 任务调度机制
    
    程序设置了两个定时任务:
    1. 在配置的 `JOB_START_TIME`(默认07:00)执行
    2. 在该时间的12小时后再次执行 [3](#0-2) 
    
    ## 任务执行函数
    
    实际的数据获取工作由 `run_task()` 函数处理,该函数包含重试机制: [4](#0-3) 
    
    这个函数会调用 `DataFetcher.fetch()` 方法来执行实际的数据抓取工作。 [5](#0-4) 
    
    ## Notes
    
    程序启动后会立即执行一次数据获取任务,然后进入主循环等待定时任务触发。这种设计确保了程序能够持续运行并按计划执行数据抓取任务,同时通过重试机制提高了系统的可靠性。
    
    Wiki pages you might want to explore:
    - [Overview (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#1)
    - [Environment Variables (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#3.1)
    
    
    
    是的,将这个项目改成单次运行非常容易!
    
    ## 需要修改的核心部分
    
    主要需要修改 scripts/main.py 中的主循环逻辑。 [1](#1-0)  目前程序使用无限循环来保持运行,但对于青龙面板的单次执行,你只需要移除这个循环。
    
    ## 具体修改方案
    
    ### 1. 移除调度和主循环代码
    
    删除或注释掉以下部分:
    - 定时任务设置 [2](#1-1) 
    - 主循环 [1](#1-0) 
    
    ### 2. 保留核心执行逻辑
    
    保留这部分代码,它会立即执行一次数据获取: [3](#1-2) 
    
    ### 3. 修改后的 main() 函数结构
    
    修改后的 main() 函数应该是:
    1. 初始化配置和日志 [4](#1-3) 
    2. 创建 DataFetcher 实例 [5](#1-4) 
    3. 直接调用 run_task(fetcher) 执行一次数据获取
    4. 程序结束
    
    ## 优势
    
    这样修改后:
    - 程序执行完成后会自动退出,适合青龙面板的 cron 任务
    - 保留了所有数据获取逻辑 [6](#1-5) 
    - 保留了重试机制 [7](#1-6) 
    - 减少了资源占用,因为不需要常驻进程
    
    ## Notes
    
    这个修改非常简单,主要是移除调度相关代码。所有的数据获取、Home Assistant 集成、数据库存储等核心功能都会保持不变。你只需要在青龙面板中设置合适的 cron 表达式来替代原来的 JOB_START_TIME 配置。
    
    Wiki pages you might want to explore:
    - [Overview (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#1)
    - [Environment Variables (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#3.1)

  8. 网心云OEC/OEC-turbo刷机问题——刷机教程、救砖方法、技术要点及下载boot失败异常解决尝试_oec-turbo刷入飞牛-CSDN博客

    网心云OEC/OEC-turbo刷机问题——刷机教程、救砖方法、技术要点及下载boot失败异常解决尝试_oec-turbo刷入飞牛-CSDN博客
    https://blog.csdn.net/John_Lenon/article/details/146461220

    #oec

  9. OEC 有锁版刷机教程、刷机工具、底包、刷机包,一站式分享-京东云、网心云、玩客云等PCDN云设备-恩山无线论坛 - 手机版 - Powered by Discuz!

    OEC 有锁版刷机教程、刷机工具、底包、刷机包,一站式分享-京东云、网心云、玩客云等PCDN云设备-恩山无线论坛 - 手机版 - Powered by Discuz!
    https://www.right.com.cn/forum/thread-8432287-1-1.html

    #oec

  10. armbian 关闭 swap:1. 确认一下swapon --show,看一下 swapfile 位置,后面删掉2. sudo swapoff -a3. 去删掉 swapfile4. 去/etc/default/armbian-zram-config 中,设置 swap=false关掉 swap 对 emmc 好,armbian 默认开 zram,swapiness 还是 100,swap 优先级非常高

    armbian 关闭 swap:

    1. 确认一下swapon --show,看一下 swapfile 位置,后面删掉
    2. sudo swapoff -a
    3. 去删掉 swapfile
    4. 去/etc/default/armbian-zram-config 中,设置 swap=false

    关掉 swap 对 emmc 好,armbian 默认开 zram,swapiness 还是 100,swap 优先级非常高。具体的参数可以看一下 armbian-zram-config 这个文件。


    #linux #programming

  11. https://linux.do/t/topic/767490

    昨天听了人工智能讲座 看见展示的豆包生成ppt效果还行。

    这边在论坛又发现了个小工具。有空可以试试


    #ai

  12. 【西门子1200PLC和G120变频器的Profinet通讯控制_保姆级教程-哔哩哔哩】

    【西门子1200PLC和G120变频器的Profinet通讯控制_保姆级教程-哔哩哔哩】

    https://www.bilibili.com/video/BV1ad3azsE6o

    #bm #plc

  13. 奇点更近

    奇点更近


    https://weread.qq.com/web/bookDetail/45332030811e81a8ag012d5c

  14. 最近的烦恼事2025-2026 上学期 排课总共是 4 个机电实训+sgave 的驱动+中德 C,总共 220课时

    最近的烦恼事

    2025-2026 上学期 排课总共是 4 个机电实训+sgave 的驱动+中德 C,总共 220课时。

    我寻思着把这个 56 课时的 C 换成 48 课时的机器人的课。

    结果不行。

    主任建议我可以把 C 甩了。

    其实我想甩一节集电实训。和同事商量,最终是把 C 甩给了他。

    这样子我的课时量就下来了。但是有点过于少了 才 160。


    烦人。。。

    等下一个上学期的时候,我要重新夺回 C 语言。

    #work #life