一个SQLite文件+Git同步=完美团队协作?这个开源工具的思路太野了

lxiol

Worklog,一个刚开源不久的一个本地优先的项目管理工具,Tauri v2 套 SvelteKit,数据全搁本地SQLite里。说白了就是一块离线的看板,Backlog、Todo、In Progress、Done四列,不依赖任何云服务,也不用注册什么账号。我觉得这个非常轻量级,而且简单清爽,如果你正好找一个简单的本地项目管理工具,也可以看看Worklog。

功能详情

1. 看板就是四列,拖过去就完事

打开就是一个看板界面,四列,标准的Backlog、Todo、In Progress、Done。没有那些花里胡哨的泳道、子任务嵌套什么的。说实话大部分时候我连标签都不加,一张卡一个标题,拖到对应列就完事。

点开Ticket里面是详情面板,描述区能写Markdown,写完切预览模式看效果。下面还能挂评论,谁有什么想法直接敲进去。右键菜单里移动、删除、编辑这些操作都有。对了,还有个快捷键,选中Ticket按M直接推到下一列。

2. 表格视图,批量扫任务的时候切过去看

看板日常用着顺手,但有时候我得一口气扫几十个Ticket。谁在干什么、哪些快到期了、哪些卡太久没动过,看板四列来回翻太慢了。切到表格视图就清楚多了,所有Ticket一行行排开,列头能点排序,筛选栏敲个名字就能只看某个人的任务。我一般周五下午写周报的时候切过来,从上往下撸,该关的关该挪的挪,十分钟搞定。

3. 甘特图可以不用开Excel了

Ticket设好开始和截止时间,切到甘特图视图,时间轴上排得明明白白。哪几个任务时间撞了,一眼就能看到。以前做外包带小团队的时候,排期我一直是用Excel画色条。画完了发群里,改一个时间全部重画。现在直接在Ticket里改日期,甘特图自动跟着变。虽然比不上专业项目管理软件那种带依赖线的甘特图,但够用了。

4. 命令面板,手不用挪到鼠标上

Cmd+K弹命令面板,跟VS Code一样。新建Ticket、切看板、打开设置、手动触发Git同步,都能敲出来,不用在菜单里翻。快捷键也挺全,Cmd+N建Ticket,Cmd+B建看板,Cmd+S手动同步,Cmd+加号放大,Cmd+减号缩小,Cmd+0复位缩放。鼠标基本上可以放一边,说实话我也没全记住,但常用的几个熟了以后确实顺手。上面是默认的快捷键,我们可以根据我们的习惯修改。

5. Git自动同步,不用自己搭服务器

Worklog的数据就是一个.worklog/worklog.db文件,放在工作区目录下面。所以它的同步思路很直白,用Git。在设置里绑一个仓库地址,Worklog在后台定时commit和push这个db文件。可以调间隔时间,策略是先pull再push,减少冲突。团队几个人共用同一个Git仓库的话,谁的看板改了都能同步过去。不是实时的,有延迟,但不用搭服务器也不用订阅,数据还全在自己手里。

6. 日历视图,把任务摊到格子里看

Ticket按截止日期散到日历格里,哪些天任务扎堆一眼能看出来。我习惯周一早上先切过去看看这周整体节奏,心里有个数。跟甘特图比的话,日历更偏短期排程。甘特图看的是项目从头到尾的周期,日历看的是这周几号要交什么。两个配合着用,长短期的规划都有地方放。

7. 撤销重做,终于有项目工具做了这个

给数据库加了张events表。所有操作,创建、修改、删除、移动、归档、恢复,一条条全记进去。所以现在工具栏上多了Undo和Redo两个按钮,Cmd+Z、Cmd+Shift+Z也能用。改错了能退回去,跟写代码一样。这个events表还能当审计日志用。谁什么时候改了哪个Ticket的什么字段,翻表就能查。对那种需要回头翻决策记录的团队来说,挺实用。

8. 几个我觉得好用的小功能

  • Markdown预览:写技术规范或者贴代码的时候有用。写完切预览看一眼渲染效果,不对就改。
  • 看板归档:项目做完了不用删,归档就行。侧边栏不显示了,但数据还在db里,随时能恢复回来。
  • 亮色暗色切换:默认暗色,也能切亮色。亮色模式对比度调得还行,白天靠窗坐也不会反光到看不清。
  • 全局缩放:50%到200%,快捷键调。我在27寸4K屏上习惯缩到80%,换到笔记本13寸就开到120%。
  • 国际化:v1.3.7集成了Inlang。目前主要是英文界面,但框架搭好了,有人愿意贡献翻译的话门槛不高。
  • 设置面板:Git同步配置、外观、快捷键、事件日志全塞在一个界面里,不散不乱。

9. 这东西技术栈怎么搭的

Worklog的架构分三层,UI是SvelteKit加TypeScript,中间hooks层处理异步逻辑,底下repository层操作SQLite。桌面壳是Tauri v2,Rust写的。Tauri打包出来比Electron小太多了,装完几十兆,不是几百兆。运行时用的是Bun,不是Node.js。装依赖和构建都快一截。我自己从源码编译过一次,bun install跑完的速度确实舒服。

数据全在SQLite里,创建Workspace的时候指定一个本地目录,Worklog就在下面建.worklog/worklog.db。没有任何云后端,也不需要注册什么账号。想换电脑了,把整个目录拷走就行。

Linux这边有APT仓库、RPM包、AppImage和AUR四种装法。macOS用DMG,Windows跑EXE。三个平台都支持。

10. 到底适合什么人用

我一个人用它管自己的几个项目,够用。要是带个三五个人的小团队,靠Git同步也能协作起来。但它不是Jira。没有Sprint,没有燃尽图,没有自动化规则,也连不了Slack飞书。它就是一块本地的看板,轻、快、数据透明。

如果你对这几个点有感,装一个试试不亏。

安装使用

装起来不复杂,GitHub Releases页面(搜regisx001/Worklog,点Releases)里各个平台的包都有。官网也有下载链接,传送门:https://regisx001.github.io/Worklog/docs/download

装完打开,第一个界面会让你选一个本地目录当Workspace。随便建个空文件夹指过去就行,Worklog会在里面生成.worklog/worklog.db。以后换电脑,把这个目录拷走,数据全在。

进了Workspace之后,左侧边栏能看到”New Board”按钮。点一下起个名字,一个空看板就出来了。接下来就是往里面扔Ticket,Backlog列里建几条试试手感。

Ticket的标题写好,点开详情可以补描述、设优先级、加标签、定截止日期,描述区支持Markdown,习惯在GitHub写README的话上手零门槛。

团队用的话,进Settings,找到Git Sync那一栏,填上仓库地址和分支名。间隔时间默认是5分钟,可以根据需要改。配好以后Worklog就在后台默默commit和push了,其他人pull下来看板状态就对上了,记得先把Git仓库init好并且远程能通,不然同步会报错。

日常操作基本靠键盘,Cmd+N建Ticket,Cmd+B建看板,Cmd+K打开命令面板搜任何操作。选中Ticket按M往后推一列,Esc关闭详情面板,用熟了以后鼠标大部分时间都在旁边吃灰。

GitHub仓库:https://github.com/regisx001/Worklog

  • 标题: 一个SQLite文件+Git同步=完美团队协作?这个开源工具的思路太野了
  • 作者: lxiol
  • 创建于 : 2026-06-23 10:00:00
  • 更新于 : 2026-06-23 17:05:52
  • 链接: https://blog.lxiol.cn/2026/06/23/2026-06-23-worklog-sqlite-git-sync/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。