Golang在Ubuntu上如何进行版本控制

在Ubuntu上进行Golang版本控制,可通过以下方式管理代码版本Go工具链版本

一、代码版本控制(Git)

  1. 安装Git
    sudo apt update && sudo apt install git
    
  2. 初始化仓库
    cd /path/to/project
    git init
    git add .
    git commit -m "Initial commit"
    
  3. 关联远程仓库
    git remote add origin https://github.com/yourname/repo.git
    git push -u origin main
    
  4. 分支管理
    git branch feature-xxx  # 创建分支
    git checkout feature-xxx  # 切换分支
    git merge feature-xxx  # 合并分支
    
  5. 标签发布
    git tag -a v1.0.0 -m "Release version 1.0.0"
    git push origin v1.0.0
    

    参考来源:

二、Go工具链版本管理

1. 使用GVM(推荐)

GVM可方便切换不同Go版本,支持多版本共存。

  • 安装GVM
    bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
    source ~/.gvm/scripts/gvm
    
  • 安装/切换版本
    gvm install go1.25.0  # 安装指定版本
    gvm use go1.25.0 --default  # 切换并设为默认
    go version  # 验证版本
    

    参考来源:

2. 使用Docker

通过Docker容器快速切换Go版本,无需污染主机环境。

docker run -it --rm golang:1.25.0 bash  # 运行指定版本Go

参考来源:

3. 手动安装多版本

  • 下载不同版本Go(如go1.25.0.linux-amd64.tar.gz),解压到不同目录(如/usr/local/go1.25)。
  • 通过修改PATH环境变量切换版本:
    export PATH=/usr/local/go1.25/bin:$PATH
    go version
    

    参考来源:

三、依赖版本控制(Go Modules)

Go Modules用于管理项目依赖的版本,需配合Git使用。

  1. 初始化模块
    go mod init github.com/yourname/repo
    
  2. 添加依赖
    go get github.com/pkg/errors@v1.1.0  # 指定版本
    go mod tidy  # 自动整理依赖
    
  3. 提交依赖文件
    go.modgo.sum纳入Git版本控制:

    git add go.mod go.sum
    git commit -m "Update dependencies"
    

参考来源:

总结

  • 代码版本:用Git管理,支持分支、标签等操作。
  • Go工具链版本:优先用GVM切换,或通过Docker、手动安装管理。
  • 依赖版本:通过Go Modules记录,提交到Git仓库。

以上方法可组合使用,满足不同场景下的版本控制需求。