git 提交代码由原先账号密码调整为ssh

如果你希望将 Git 提交代码的身份验证方式从用户名和密码切换到 SSH,你需要进行以下几个步骤:

1. 生成 SSH 密钥对

如果你还没有 SSH 密钥对,可以使用以下命令生成一个新的密钥对:

bash 复制代码
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
  • -t rsa 指定密钥类型为 RSA。
  • -b 4096 指定密钥长度为 4096 位。
  • -C "your_email@example.com" 添加一个注释(通常是你的邮箱)。

按照提示选择保存位置(默认是 ~/.ssh/id_rsa)和设置密码(如果需要)。

2. 将公钥添加到你的 Git 账户

找到生成的公钥(~/.ssh/id_rsa.pub)并将其添加到你的 Git 账户(如 GitHub、GitLab 或 Bitbucket):

  1. 查看公钥内容:

    bash 复制代码
    cat ~/.ssh/id_rsa.pub
  2. 将公钥复制到剪贴板:

    bash 复制代码
    cat ~/.ssh/id_rsa.pub | clip  # Windows
    pbcopy < ~/.ssh/id_rsa.pub     # macOS
    xclip -sel clip < ~/.ssh/id_rsa.pub  # Linux
  3. 登录到你的 Git 账户,进入 SSH 密钥设置页面,粘贴公钥并保存。

3. 配置 Git 使用 SSH

更新 Git 远程仓库的 URL,使用 SSH 协议代替 HTTPS:

  1. 查看当前的远程仓库 URL:

    bash 复制代码
    git remote -v
  2. 将远程仓库 URL 更改为 SSH:

    • GitHub:

      bash 复制代码
      git remote set-url origin git@github.com:username/repository.git
    • GitLab:

      bash 复制代码
      git remote set-url origin git@gitlab.com:username/repository.git
    • Bitbucket:

      bash 复制代码
      git remote set-url origin git@bitbucket.org:username/repository.git

    usernamerepository 替换为你的用户名和仓库名。

  3. 验证配置是否正确:

    bash 复制代码
    git remote -v

    确保显示的 URL 使用 SSH 协议(git@...)。

4. 测试 SSH 连接

使用以下命令测试与远程仓库的 SSH 连接:

  • GitHub:

    bash 复制代码
    ssh -T git@github.com
  • GitLab:

    bash 复制代码
    ssh -T git@gitlab.com
  • Bitbucket:

    bash 复制代码
    ssh -T git@bitbucket.org

如果一切设置正确,你应该看到一条欢迎消息或成功连接的提示。

完成上述步骤后,你的 Git 提交代码将使用 SSH 密钥进行身份验证,而不再需要输入用户名和密码。

相关推荐
Tipriest_2 小时前
Ubuntu常用的软件格式deb, rpm, dmg, AppImage等打包及使用方法
linux·运维·ubuntu
真智AI2 小时前
利用 Claude Opus 4 自动化 GitHub 工作流:从安装到实战详解
运维·自动化·github
胡斌附体3 小时前
linux测试端口是否可被外部访问
linux·运维·服务器·python·测试·端口测试·临时服务器
愚润求学3 小时前
【Linux】自旋锁和读写锁
linux·运维
大锦终3 小时前
【Linux】常用基本指令
linux·运维·服务器·centos
知北游天3 小时前
Linux:多线程---深入互斥&&浅谈同步
linux·运维·服务器
Gappsong8743 小时前
【Linux学习】Linux安装并配置Redis
java·linux·运维·网络安全
try2find4 小时前
移动conda虚拟环境的安装目录
linux·运维·conda
码农101号4 小时前
Linux中容器文件操作和数据卷使用以及目录挂载
linux·运维·服务器
程序员弘羽5 小时前
Linux进程管理:从基础到实战
linux·运维·服务器