Git 可在 Ubuntu 默认的 22.04 LTS 和 24.04 版本中直接安装,因此安装过程非常快捷。较为复杂的部分是配置 GitHub 或 GitLab 的 SSH 密钥认证,本指南将对此进行完整说明。
前提条件
- 运行 Ubuntu 22.04 LTS 或 Ubuntu 24.04 的 Linux VPS 或云服务器
- 带 sudo 权限的 SSH 访问
- GitHub 或 GitLab 账户(用于 SSH 密钥配置步骤)
Ubuntu 22.04 LTS 和 24.04 都预装了 OpenSSH 客户端,开始前无需额外工具。
步骤1:更新套餐列表
安装任何包前,先同步你的 apt 包索引,确保你拉取的是最新版本。
sudo apt update
步骤 2:安装 Git。
sudo apt install git -y
-y 标志会自动确认安装。在 Ubuntu 22.04 版本中,安装了 Git 2.34.x。在 24.04 版本,你会得到 Git 2.43.x。验证已安装版本:
git –version
预期输出将类似于:git 版本 2.43.0
步骤 3:配置你的 Git 身份
Git 要求每个提交都附带姓名和电子邮件地址。将这些设置为你将要使用的服务器用户的全局。
git config –global user.name “Your Name” git config –global user.email “you@yourdomain.com”
验证配置:
git config –list
步骤 4:设置 SSH 密钥认证
通过 HTTPS 克隆并推送到远程仓库,每次操作都需要输入密码或令牌。SSH 密钥认证一次后再也不会提示。这是服务器到仓库认证的标准方法。
1、生成 SSH 密钥对
ssh-keygen -t ed25519 -C “you@yourdomain.com”
-t ed25519 标志指定了 Ed25519 算法,这是现代推荐的密钥类型。当被要求输入文件位置时,按回车键接受默认的(~/.ssh/id_ed25519)。可选地设置一个密码短语。
如果你的远程服务需要 RSA(比如旧的 GitLab 实例),可以使用:
ssh-keygen -t rsa -b 4096 -C “you@yourdomain.com”
2、展示你的公钥
cat ~/.ssh/id_ed25519.pub
复制整个输出,包括 ssh-ed25519 前缀和末尾的注释。
3、将密钥添加到 GitHub 或 GitLab
在 GitHub 上:前往 Settings > SSH and GPG keys > New SSH key,粘贴公钥并填写描述性标题。
在 GitLab 上:前往 User Settings > SSH Keys,粘贴密钥并填写标题,如安全策略有要求,可设置有效期。
4、测试连接
ssh -T git@github.com
预期输出:Hi username! You've successfully authenticated, but GitHub does not provide shell access.
ssh -T git@gitlab.com
预期成果:欢迎来到 GitLab,@username!
步骤5:克隆仓库
在配置了 SSH 认证后,克隆使用 SSH URL 而非 HTTPS。
git 克隆 git@github.com:yourusername/your-repo.git
仓库会克隆到以仓库命名的目录中。进入并确认远程配置:
cd your-repo && git remote -v
在一台服务器上管理多个 Git 身份
VPS 开发环境经常需要以不同用户身份对不同仓库进行认证,例如个人项目使用开发者账户、客户仓库使用 CI 部署密钥、工作项目使用独立身份。SSH 配置文件可以简洁地处理这一需求。
创建每个主机的 SSH 配置
nano ~/.ssh/config
为每个主机身份添加一个块:
Host github-personal HostName github.com User git IdentityFile ~/.ssh/id_ed25519Host github-client HostName github.com User git IdentityFile ~/.ssh/id_ed25519_client
生成第二个密钥对,文件名不同:
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_client -C “deploy@clientdomain.com”
在客户的部署密钥下添加 id_ed25519_client.pub 到客户端的 GitHub 或 GitLab 账户。
克隆时使用别名
git clone git@github-client:clientorg/their-repo.git
SSH 解析 github-client 的 github.com,并使用指定的密钥文件。这种方法即使在同一物理服务器上,身份之间也没有冲突。
设置默认分支名称
Git 的默认分支名在新配置中从“master”改为“main”,但在旧设置上创建的仓库仍可能使用“master”。为了使服务器的 Git 行为符合团队规范,请全局设置默认分支名称:
git config –global init.defaultBranch main
可选:通过 PPA 安装新版本
Ubuntu 的默认仓库可能不包含最新的 Git 版本。如果你需要新版本来实现特定功能,Git 维护者提供的 PPA 可为 Ubuntu LTS 版本提供当前最新版本:
sudo add-apt-repository ppa:git-core/ppasudo apt updatesudo apt install git
这在大多数使用场景中是可选的。Ubuntu 默认仓库中的版本稳定且足够满足绝大多数工作流程的需求。如不知道如何操作,欢迎联系咨询余初云。
原创文章,作者:余初云,如若转载,请注明出处:https://blog.jidcy.com/jsjc/2170.html
