git subtree 简单使用记录

昨天在和朋友讨论两个项目双向同步的问题,比如,两个从同一分支拉出来的两个独立项目各自发展,但又要求定时双向同步的时候,虽然提出了用 remote 可以临时解决一下。不过后来又和朋友讨论起 git subtree 来,在此之前,我如果有需要在项目内部依赖外部独立的项目时,我一般都使用 git submodule 来解决。不过昨天搜索了一下之后发现 git subtree 似乎更加强大,并且已经成为替代 git submodule 的事实方案。所以这里来学习一下。 在使用 git subtree 之前如果你没有用过 git submodule,这里先进行一 Read more ...


Prometheus: 监控系统和时序数据库

Prometheus 是一个用 Go 写的监控系统,最早由 SoundCloud 开发并开源,Prometheus 内置一个时序数据库。Prometheus 受到 Google borgmon 监控系统启发,2012 年起源于 SoundCloud 内部,后来成为第二个加入 Cloud Native Computing Foundation 的项目。 It collects metrics from configured targets at given intervals, evaluates rule expressions, display Read more ...

2020-04-27 prometheus , monitor , tsdb , time-series

使用 asdf-vm 管理编程语言多个版本

之前浏览文章的时候偶然看到了 asdf 这个项目,然后惊讶的发现它整合了我之前经常使用的 pyenv 还有不太常用的 jenv, nvm, rvm,通过这一个命令就可以实现,所以立马在机器上试了一下。 Install 安装的过程具体可以参考官网,这里不多展开,Mac 下可以使用 Homebrew, 不过个人还是偏好使用 git clone 安装: git clone https://github.com/asdf-vm/asdf.git ~/.asdf 然后在 ~/.zshrc 中添加: . $HOME/.asdf/asdf.sh Plug Read more ...

2020-04-25 asdf , linux , mac , pyenv , nvm

Linux 内存管理初识

DMA 内存区域,0~16MB 内存。 NORMAL 内存区域,16MB~896MB HIGHMEM,高端内存区域。 用户空间 用户进程访问的内存空间,每个进程有自己的独立用户空间,虚拟地址从 0x00000000 到 0xBFFFFFFF 总容量 3G. 进程与内存 按照”访问属性” 划分五个不同的内存区域。 代码段 存放可执行文件的操作指令,可执行程序在内存中的镜像。 只读,不可写 数据段 可执行文件中已初始化全局变量,静态分配的变量和全局变量。 BSS 未初始化的全局变量 heap heap 用来存放进程运行时被动态分配的内 Read more ...

2020-04-24 linux , memory

现金流桌游

今天和几个小伙伴体验了一下“现金流”这款桌游,其实在很早之前看过《穷爸爸,富爸爸》之后就了解到了这款游戏,但一直没有机会去尝试。很多人把这款桌游“吹”的很神,就像是玩过就能[[财富自由]]一样,虽然实际生活并不会像游戏一样,但多少能从中体验到一些心得。 规则 现金流的规则可以说是非常简单的了,玩过大富翁吗?把大富翁地图上的各种地标换成各种人生事件,领工资,各种机会,生孩子,失业等等,那就是游戏的开始。当然如果要跳出无穷无尽的轮回则需要思考自己手上资产负债表中的各项数字。从“老鼠圈”跳转到人生的快车道。 具体细节的规则网上也有很多,这里就不展开。直接 Read more ...

2020-04-18 cashflow , board-game , fortune

每天学习一个命令:qmv 在文本编辑器中对文件及目录进行编辑

在给 tldr review 提交时,有一个命令引起了我的兴趣,那就是 qmv,当时简单的尝试了一下,浏览了一下 man page。没有仔细的深入,但昨天突然遇到一个需求,我要批量修改一个目录下文件的大小写,需要将大写部分修改成小写,一下子就想起了这个命令。虽然这个命令是作为移动来介绍的,但它也可以作为重命名来使用,毕竟重命名也算是移动的一种嘛。 命令的使用特别简单,直接使用 qmv 后面接目录名即可,然后会打开默认的文本编辑器, 比如vi,然后在其中能看到两列,左边是原始名字,后面是目标名,如果要批量修改重命名那就直接对后面一列进行编辑即可。最后保存 Read more ...

2020-04-13 qmv , linux , command , rename , batch-rename

Github Actions 使用

GitHub Actions 是 GitHub 推出的 CI/CD 工具,通过简单的语法可以做一些 build, deploy 等等的事情。 核心功能与用途 自动执行构建、测试、部署等流程,实现开发流程自动化。 可以根据代码仓库中的事件(如 push、pull request、issue 创建等)自动触发预设的工作流(Workflow)。 支持多种操作系统(Linux、Windows、macOS)的虚拟机环境,也可以使用自托管 Runner。 通过 GitHub Marketplace 可复用和共享他人编写的 Action,减少重复 Read more ...


每天学习一个命令:bandwhich 展示带宽使用

如果你使用我之前推荐过的 asdf,可以直接通过 asdf 来安装 Rust 以及 bandwhich。 安装 增加 rust asdf plugin-add rust 安装 rust 最新版 asdf install rust latest 设置全局生效 asdf global rust 1.51.0 这样你就可以在终端使用 cargo 来安装 bandwhich: cargo install bandwhich 然后将 bandwhich 链接到 /usr/local/bin 中: sudo ln -s /home/ei Read more ...

2020-04-10 linux , bandwhich , asdf

在命令行下给 socks 或者 http 代理测速

在国内不可避免的要用到代理,这些年陆陆续续从 GAE 上的代理,到自己购买 VPS 搭建,从 Shadowsocks 到 V2ray,自己花费了不少的时间,而现在虽然手上也有两台 VPS,但是已经不拿他们作为主要的代理了,我一台 Directspace 的 VPS,线路没有优化过,到国内的延迟略高,而另一台 AWS 的 EC2,虽然地理位置在韩国,也只勉强到能用的阶段。所以这两年陆陆续续不再自己维护代理服务,之前有购买过因为 Ingress 结缘的 Shadowsocks 服务,一直用到现在,虽然有些情况下会发生断流,倒也一直没有放在心上。直到尝试了一周 Read more ...

2020-04-06 speedtest , socks , http_proxy , proxy , vps , v2ray

OpenWrt 学习笔记

硬件 CPU Atheros/QualCom 高通 (QCA) BroadCom 博通 (BCM) MediaTek 联科发 (MTK) RealTek 瑞昱 RAM SDRAM DDR, DDR2, DDR3 ROM(Flash) SPI Flash NOR Flash NAND Flash WiFi 芯片接口 USB(速度相对较慢) PCI-e 软件 BootLoader Wiki CPU, 网卡数据库 Wiki: https://deviwiki.com/ Read more ...

2020-04-05 openwrt , wrt , router , linux , cpu

最近文章

  • AI 浏览器 Comet 初体验 前两天刚介绍完 Dia 浏览器,就听说了 Dia 浏览器的母公司 The Browser Company 被 Atlanssian 以 6.1 亿美元现金收购,而另外一边,Google 的反垄断案也告一段落,不需要拆分 Chrome 和 Android,这边,Perplexity 就推出了以 Perplexity AI 为核心的网页浏览器 Comet。
  • 我买了一条 Thunderbolt 数据线 这两天使用 macOS 的 Migration Assistant 迁移系统,按照应用中的提示,连接同一个 WiFi,或者使用 Peer-to-Peer 方式,但是在使用的过程中 macOS 提交使用 Thunderbolt Cable 连接两台 macOS 的 Type-C 可以将速度提升到 3000MB~4000MB/s 左右。
  • 清理 macOS 上的一些低频使用的应用 之前的几台 MacBook Pro 都是因为钱包有限,所以只购买了 512GB 的空间。虽然也是够用的,但是如果安装的应用比较多的情况下,就会发现存储总是告警的情况。所以想着安装了 CleanMyMac 应用之后,就打开了它的 Uninstaller 功能,然后把我之前所有安装的应用列表都列出来,清理一下其中不是非常高频使用但是却又能解决特定需求的应用。
  • JetBrain AI Agent Junie 使用体验 今天更新了一下 JetBrains IntelliJ IDEA 和 PyCharm,在更新日志中发现 JetBrains 新增了 Junie 代码助手的功能,就顺手安装了,虽然我一直在用 JetBrains AI Assistant,但 AI Assistant 更像是一个常驻 IDEA 侧边栏的代码问答,虽然可以辅助生成代码,但是更偏重代码的自动提示,回答用户的问题,对错误进行解释,以及相关的文档工作,更像是一个更偏向代码的 AI 聊天伴侣(Companion)。但是 Junie 则更像是一个全智能的 Coding Agent,适合用来处理更大规模的,支持多个步骤,可以独立完成编码任务的 AI Agent,功能上更偏向于 Claude Code,Gemini CLI 这样完全自助完成任务的智能体。
  • 突破 Claude Code 5小时限制:利用 GitHub Copilot 代理 Claude Code 请求 如果大家高频使用 Claude Code 进行代码对话和生成工作的话, 经常会遇到 5 小时的限制。 幸运的是,如果你已经订阅了 GitHub Copilot,现在有一个巧妙的解决方案:通过本地代理将 GitHub Copilot 的 Claude Sonnet 4 模型转换为 Anthropic API 格式,从而绕过 Claude Code 的使用限制,继续享受顶级的 AI 编程体验。

赞助