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仓库进行交互。

相关推荐
一颗青果36 分钟前
HTTP协议详解
linux·网络·网络协议·http
广州灵眸科技有限公司4 小时前
瑞芯微(EASY EAI)RV1126B CAN使用
linux·网络·单片机·嵌入式硬件
魂万劫6 小时前
如何在虚拟机VM上|Linux环境内安装windows
linux·运维·服务器·windows
序属秋秋秋6 小时前
《Linux系统编程之进程控制》【进程等待】
linux·c语言·c++·进程·系统编程·进程控制·进程等待
zfj3216 小时前
top 命令中的 wa (IO wait) 指标,理论上几乎完全是由磁盘IO(包括swap)引起的,而不是网络IO
linux·网络·top·iowait
Xの哲學6 小时前
Linux网卡注册流程深度解析: 从硬件探测到网络栈
linux·服务器·网络·算法·边缘计算
用户6135411460167 小时前
libicu-62.1-6.ky10.x86_64.rpm 安装步骤详解(麒麟V10系统)
linux
秋4278 小时前
防火墙基本介绍与使用
linux·网络协议·安全·网络安全·架构·系统安全
取加若则_8 小时前
深入解析Linux进程优先级机制
linux·服务器
点亮一颗LED(从入门到放弃)9 小时前
设备模型(10)
linux·服务器·前端