如何用一条命令更新所有Go模块依赖?
大家好!我开始学习Go,遇到了更新依赖的问题。我有一个项目使用了几个外部包。这是我的go.mod文件:
```
module my-project
go 1.21
require (
github.com/gin-gonic/gin v1.7.7
github.com/go-sql-driver/mysql v1.6.0
github.com/jmoiron/sqlx v1.3.4
)
```
我知道要更新某个特定包可以使用命令 `go get -u github.com/gin-gonic/gin`。但如果我有许多依赖怎么办?逐个手动更新既耗时又不方便。此外,我听说有命令 `go get -u ./...`,但它似乎不会更新所有包,只更新那些直接在源代码中引用的包。
我还注意到,更新后可能会出现版本冲突或不兼容问题。例如,最近我将gin更新到最新版本后,路由功能无法正常工作了。不得不回退回去。
请问,如何正确且安全地更新所有依赖?