linux git ssh配置过程

Linux Git SSH 配置全过程指南

1. 检查并安装必要的软件

bash 复制代码
# 检查是否已安装Git和SSH
git --version
ssh -V

# 如果未安装,执行以下命令安装
sudo apt update
sudo apt install git openssh-client -y

2. 生成SSH密钥对

bash 复制代码
ssh-keygen -t ed25519 -C "your_email@example.com"
# 或使用RSA算法(如果系统不支持ed25519)
# ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

# 按提示操作(建议直接按回车使用默认路径和空密码)

3. 将公钥添加到Git托管平台

复制公钥内容

bash 复制代码
cat ~/.ssh/id_ed25519.pub
# 或
# cat ~/.ssh/id_rsa.pub

添加到Git平台

  • GitHub: Settings → SSH and GPG keys → New SSH key
  • GitLab: Preferences → SSH Keys
  • Bitbucket: Personal settings → SSH keys

4. 测试SSH连接

bash 复制代码
# GitHub测试
ssh -T git@github.com

5. 配置Git全局设置

bash 复制代码
git config --global user.name "Your Name"
git config --global user.email "your_email@example.com"

6. 使用SSH克隆仓库

bash 复制代码
git clone git@github.com:username/repository.git

到这里就可以了

7. 可选:配置多个SSH密钥

如果需要为不同平台使用不同密钥:

  1. 创建config文件
bash 复制代码
nano ~/.ssh/config
  1. 添加配置示例

    GitHub账户

    Host github.com
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_ed25519_github
    IdentitiesOnly yes

    公司GitLab账户

    Host gitlab.company.com
    HostName gitlab.company.com
    User git
    IdentityFile ~/.ssh/id_rsa_work
    IdentitiesOnly yes

8. 验证配置

bash 复制代码
# 检查Git配置
git config --list

# 检查SSH配置
ssh -vT git@github.com  # 详细输出连接过程

9. 常见问题解决

权限问题

bash 复制代码
chmod 700 ~/.ssh
chmod 600 ~/.ssh/*

连接被拒绝

  • 检查防火墙设置
  • 确认SSH服务在服务器上运行
  • 验证网络连接

完成以上步骤后,您应该能够通过SSH协议安全地与Git仓库进行交互。

相关推荐
野熊佩骑13 小时前
一文读懂Redis之数据持久化
linux·运维·数据库·redis·缓存·中间件·centos
Murphy_lx14 小时前
Linux(操作系统)文件系统--对打开文件的管理
linux·c语言·数据库
saber_andlibert14 小时前
【Linux】IPC——命名管道(fifo)
linux·运维·服务器
TU^14 小时前
Linux--权限
linux·服务器
阿星_15 小时前
PyCharm项目依赖库的备份与还原方法
linux·服务器·python
葵花日记15 小时前
Linux——自动化建构make/makefile
linux·运维·自动化
tt55555555555516 小时前
Linux零基础入门:权限与常用命令详解
linux·运维·服务器
woshihonghonga16 小时前
【Ubuntu 20.04升级python3.9后终端打不开的bug】
linux·开发语言·python
着迷不白16 小时前
手把手部署 HFish 蜜罐:从防火墙配置到登录使用,新手也能轻松上手
linux
凤凰战士芭比Q17 小时前
部署Tomcat11.0.11(Kylinv10sp3、Ubuntu2204、Rocky9.3)
linux·运维·tomcat