BaseHalf
全部文章

卡片布局别进 git,连接关系要留下

BaseHalf 把卡片位置写在 `.bh/` 里并对其忽略进 git。描述和 upstream 列表仍可提交,克隆拿到的是结构,不会为坐标打架。

团队共享文件夹,是为了看到同一批笔记和同一份 upstream 列表。不必共享你上周二每张卡片停在屏幕哪一格。BaseHalf 故意把这两类数据拆开。

卡片位置和尺寸写在 .bh/ 下。BaseHalf 用自己的忽略规则把这些布局文件挡在 git 外。我们从不改你的 .gitignore。描述、upstream 列表和生成记录,仍然可以跟文件夹一起提交。

BaseHalf 画布上排布的卡片,布局手柄可见。

什么跟着文件夹走,什么留在本机

克隆或拉取时,你拿到的是工作和结构,不是别人的坐标。

不进 git(按克隆 / 机器)可以提交
.bh/ 下的卡片位置与尺寸卡片上的描述
选中缓存(.bh/cache/selection.yaml)Markdown frontmatter 或 .bh/mirror/.../upstream.yaml 里的 upstream 列表
BaseHalf 为其忽略进 git 的布局元数据你选择保留的生成记录

Upstream 是文件里的纯文本。从没打开过画布的同事,在 diff 里也能看到这些列表。布局只是你这一次怎么摆卡片。把两者都塞进每次 PR,每一次微调都会变成像素级的合并冲突。

在另一台机器打开同一个文件夹

具体流程:

  1. 照常提交描述和 upstream 列表。
  2. 在另一台 Mac 上克隆或拉取。
  3. 用 BaseHalf 打开该文件夹。

画布上是同一批文件、同一组连接。位置对该克隆是全新的。卡片按这个窗口重新排布,不会回放上一台机器的 x/y。把卡片拖到你想要的地方。这些移动留在本机 .bh/,不会变成所有人的 git 噪音。

移动或重命名文件时,仍会按内容识别更新 upstream 条目。那是在修你要提交的列表,不是在恢复一块共享的看板视图。

这不是什么

这道分界是为了共享 AI 工作区时不打布局仗。它不是跨机器同步同一视图的产品。两个人可以打开同一个仓库,摆法不同,读到的 upstream 却相同。重点就在这:结构在 git 里累积;座位图不进仓库。

我们把卡片布局留在 git 外,让克隆只关于工作本身。连接、描述,以及 Agent 会读的那些列表,留在文件夹里,搜索、diff,以及下一次 Claude Code 或 Codex 会话都能找到。