CentOS 中 Golang 打包后的文件在哪

在 CentOS 上使用 Go 编译程序时,`go build main.go` 默认会把可执行文件输出到当前工作目录,文件名通常与源文件主名一致。若需要把产物放到指定目录,可通过 `-o` 明确输出路径,同时要确认目标目录具备写入权限。

CentOS 中 Golang 打包后的文件在哪

现代 Web 开发时代,Go 语言模板引擎还有价值吗?

前后端分离已成主流,但这不等于 Go 模板引擎失去价值。对于服务端渲染、内部后台、邮件与报告生成等场景,`html/template` 依旧凭借自动转义、低开销和部署简单保持竞争力,关键在于按业务复杂度选择,而不是被架构潮流带着走。

现代 Web 开发时代,Go 语言模板引擎还有价值吗?

如何在 Debian 上集成 Golang 与其他技术

这篇文章从 Debian 上搭建 Go 开发环境开始,依次梳理环境变量配置、Gin 与 Beego 接入、PostgreSQL 与 MySQL 连接,以及 RabbitMQ 消息收发示例。适合想把 Go 服务端常见配套一次跑通的读者快速对照实践。 在 Debian 上搭一套可用的 Go 技术栈,难点通常不在某一条命令,而在于环境、Web 框架、数据库和消息队列要怎么顺下来接通。

如何在 Debian 上集成 Golang 与其他技术

GoLand 代码段如何快速分享给团队

GoLand 没有“一键把代码段发给团队”的现成功能,但这件事的难点本来也不在发送,而在接收方能否立刻看懂、补齐依赖并跑起来。本文从格式保留、Live Template 复用、最小验证环境三方面整理一套更适合团队落地的分享方法。

GoLand 代码段如何快速分享给团队

Ubuntu 环境下 Golang 打包的注意事项

在 Ubuntu 上打包 Go 项目并不难,真正拉开效果差距的是环境配置、依赖管理、构建参数和分发方式。本文按“能不能编、包够不够小、能不能稳定发”的顺序,梳理从 Go Modules 到 Docker 的关键细节。 在 Ubuntu 环境里打包 Go 项目,真正容易出问题的往往不是 `go build` 这一条命令,而是依赖管理、CGO、交叉编译和分发方式这些细节没有提前理顺。

Ubuntu 环境下 Golang 打包的注意事项

如何在 Ubuntu 上为 Golang 项目添加签名

本文用一套可直接落地的流程,说明如何在 Ubuntu 上为 Golang 项目生成 GPG 密钥、导出公钥、为二进制文件创建分离式签名,并完成验证与发布。文末还附上自动化脚本,适合把签名纳入日常构建流程。

如何在 Ubuntu 上为 Golang 项目添加签名

化繁为简:Go 语言 strings.Cut 的优雅实践

Go 1.18 引入的 `strings.Cut`,把“按第一个分隔符拆成两段”这件事做成了更直接的标准写法。相比 `SplitN`、`Index` 加切片,它在语义、边界处理和常见性能表现上都更适合配置解析、URL 拆分、标签处理这类场景。 在 Go 里,按分隔符拆字符串是最常见的基础操作之一,但很多代码仍停留在 SplitN 或 Index 加切片的写法上。

化繁为简:Go 语言 strings.Cut 的优雅实践

Go 语言错误包装的实用写法:从 `%w` 到错误链最佳实践

Go 1.13 引入的错误包装,解决了传统错误信息只剩一句话、排查时难以定位源头的问题。本文围绕 `%w`、`errors.Is`、`errors.As`、`errors.Unwrap` 和自定义错误类型,整理一套更适合实际项目落地的写法与判断标准。 在 Go 项目里,错误处理往往不是“有没有报错”这么简单,真正麻烦的是线上只留下一句模糊提示,定位时却找不到触发路径。

Go 语言错误包装的实用写法:从 `%w` 到错误链最佳实践

Go 语言中 HTTP 响应体为什么必须关闭?

在 Go 里,`resp.Body.Close()` 不是可有可无的习惯写法,而是 `net/http` 明确交给调用方完成的收尾责任。真正容易混淆的是:关闭响应体解决的是资源释放,想让 HTTP/1.x 连接更有机会复用,通常还需要把响应读到 EOF。

Go 语言中 HTTP 响应体为什么必须关闭?

Go 升级时别只会编译报错:把 go fix 用到位

Go 版本升级时,最麻烦的往往不是编译报错本身,而是旧 API、旧写法和标准库迁移带来的批量修改。`go fix`就是 Go 工具链里专门处理这类问题的自动修复工具,适合在升级前后快速完成兼容性清理,并配合 diff 与测试控制风险。

Go 升级时别只会编译报错:把 go fix 用到位