# xgo **Repository Path**: flyinmysky/xgo ## Basic Information - **Project Name**: xgo - **Description**: 自用go工具集 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-11-06 - **Last Updated**: 2025-10-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 项目介绍 xgo 是一个 go 工具集 package| 当前版本 | 说明 ------ | ------- | --- xsh | 0.0.2 | 一些常用的 shell 函数 xbytes | 0.0.0 | []byte与HexString互转 xstruct| 0.0.1 | struct/map/json string的互转 ## 安装使用 参考 <[Go中私有库的模块要如何Get呢](https://www.cnblogs.com/guangdelw/p/18687793)> 所述, 首先执行 ``` go env -w GOPRIVATE=gitee.com/flyinmysky/xgo.git ``` 然后, 在项目的 go.mod 中添加如下内容(版本号根据实际需求而定): ``` require gitee.com/flyinmysky/xgo v0.0.1 ``` 然后, 在代码中引入, 例如: ``` import ( "gitee.com/flyinmysky/xgo/xsh" ) ``` 再执行 `go mod tidy` 即可 ## Change Log ### xsh version | content ------- | --- 0.0.1 | 初始版本, 提供 GetCurrentPath 函数 0.0.2 | FIX: GetCurrentPath 可能获取不准的问题(文件不修改的情况下, 第二次执行 go run) ### xbytes version | content ------- | --- 0.0.0 | 初始版本, 提供基本构造与转换功能, 未测试, 不要用 ### xstruct version | content ------- | --- 0.0.1 | 初始版本, 提供完整功能, 已测试, 可以用 ## Semantic Versioning(语义化版本) 是一种为软件组件定义版本号的规范。它使用 major.minor.patch 的格式来表示版本号。 其中: - Major(主版本号):当你做了不兼容的 API 修改时,你需要更新主版本号。 - Minor(次版本号):当你做了向下兼容的功能性新增时,你需要更新次版本号。 - Patch(修订号):当你做了向下兼容的问题修正时,你需要更新修订号。 Semantic Versioning 的目的是为了让软件版本号的变化具有可读性和可预测性,这样用户就可以通过版本号来了解软件包的更新内容和影响。版本更新在升级版本时,常常使用一些符号来指定允许升级的范围,其中包括 ^ 和 ~ 等。 - ^ 表示向后兼容地升级版本号,只允许升级到次版本号或修订版本号,不允许升级到主版本号。 - ~ 表示只允许升级到修订版本号,不允许升级到次版本号或主版本号。 例如,对于版本号为 1.2.3: - ^1.2.3 允许升级到 1.3.0、2.0.0 等次版本或主版本号的版本,但不允许升级到 1.2.4。 // TODO: 这里待确认 - ~1.2.3 只允许升级到 1.2.4、1.2.5 等修订版本号的版本,但不允许升级到 1.3.0、2.0.0 等更高的版本