docs: 补充 v1-legacy 分支说明与安装方式

master 分支已经变成历史不相关的新项目(db-v2),这里补充说明本分支的定位,
以及依赖方(如 zg-estate)应该怎么锁定/更新到这个分支,避免误跑 go get -u
拉到新项目上。
This commit is contained in:
2026-08-20 16:46:07 +08:00
parent f186c88c5c
commit 5ae9aee833
+25
View File
@@ -96,3 +96,28 @@ More Details,visit [Docs](https://glitterlip.github.io/go-eloquent-docs/)
[https://github.com/go-gorm/gorm](https://github.com/go-gorm/gorm)
[https://github.com/jmoiron/sqlx](https://github.com/jmoiron/sqlx)
[https://github.com/qclaogui/database](https://github.com/qclaogui/database)
# 分支说明(v1-legacy
`master` 分支现在是完全不同的新项目(fork 自 [doug-martin/goqu](https://github.com/doug-martin/goqu)
风格的 `exp` 表达式树 + `SelectDataset`/`InsertDataset`/`UpdateDataset`/`DeleteDataset`,历史
跟这条老线不相关),上面这份文档描述的 `db.Builder`/`DatabaseManager` 链式查询构造器只在
`v1-legacy` 分支上还继续维护。
给还在维护、但还没迁移到新架构的老项目用,比如 `zg-estate`(通过 `framework`/`contracts`/`orm`
间接依赖)。只接受独立于新架构的 bug 修复。
## 依赖方怎么安装/更新
Go modules 不会记住某个版本是从哪个分支解析出来的,`go.mod`/`go.sum` 里存的只是一次性解析出
的 commit 伪版本号,分支上有新提交也不会自动同步。
**首次锁定,或者要拿这个分支上新提交的更新**,都执行同一条命令:
```
go get git.fsdpf.net/go/db@v1-legacy
```
**禁止**跑裸的 `go get -u`(或者 `go get git.fsdpf.net/go/db@latest`)——`master` 现在是历史
完全不相关的新项目,`@latest`/`-u` 会解析到 `master` 的 HEAD,等于直接换成一个 API 完全不兼容
的实现,而不是停留在这个分支上。