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

最近文章

  • HomeShare 让本地电脑文件夹成为文件分享服务器 前些天出门拍了很多照片,回来从 SD 卡导出之后就想有一个可以快速一键分享出去的方法,通过微信传,虽然可以通过笔记一次发送超过 9 张图片,但是还是需要将照片上传到微信的笔记里面,虽然我之前也有使用自己的在线图库,但依然避免不了上传等待的过程,并且如果照片比较大时,等待的时间会很长。所以这几天我一直再想能不能有一个方法可以直接将本地的文件夹共享出来,或者直接让别人将图片一次性发送到我本地。
  • Dola 你的私人智能 AI 助手轻松管理日程 我个人一直使用 Google Calendar 作为日程管理,很久以前也购买了一个叫做 Checker Plus 的 Chrome 插件,可以直接在 Chrome 的插件栏查看日程,并且还可以直接通过自然语言来创建日程,以及在日程之前弹窗提醒,实话说这款插件已经能满足我 90% 的日程安排了。
  • K3s 部署 Bitwarden 我之前一直是在一台机器上使用 Docker compose 安装了 Bitwarden,但是这样存在一个隐患,那就是如果这一台机器宕机了,或者发生任何意外,那么我可能有一段时间无法访问我的所有密码仓库,所以为了避免这样的问题,尤其是在我已经稳定运行 K3s 一段时间之后,我就想着将 Bitwarden 迁移到 K3s 上,并且我希望直接使用 Bitwarden 历史的数据,并且也直接使用原来的域名,密码等等,这样就不需要让我所有的设备重新再登录一遍。那么本文就记录一下我在 K3s 上搭建 Bitwarden ,以及将历史数据迁移到 K3s 中的过程。
  • K3s 中给节点添加标签并实现 Pod 调度控制 给 K3s 中的节点添加标签并实现 Pod 调度是一个非常常见的需求,特别是当你希望某些 Pod 只在特定地理位置的节点,比如美国,日本,上运行的时候。
  • 使用 Claw Cloud 免费部署 Gemini 反向代理教程 前两天介绍过永久免费的 Claw Cloud Run,本文将介绍一下如何使用 Claw Cloud Run 来免费部署一个 Gemini API 反向代理服务。