
实现多代码仓库平台上传贴一下我的经验技术实现场景解决的问题在项目开发的过程一般会同时遇到不同的项目代码仓库不相同有的是在码云有的是在工蜂码云免费5个用户可以使用工蜂则可以免费20人团队共用所以不同的项目特别是跨团队的开发是一定要用到代码仓库不管用工蜂还是码云都是常见的开发管理。那如果本地既有工蜂库又有码云库用TortoiseGIT工具或GIT工具实现零切换上传不需要多次切换帐号上传下面我们用TortoiseGITGIT的环境贴一下经验。核心原理不管是码云还是工蜂都用的是GIT工具TortoiseGIT只是一个图形操作工具简化GIT的命令行上传那配置也是要配置好GIT与码云和工蜂的绑定关系就能实现工具的顺畅使用我采用了用ssh-gen 生成本地PublicKey然后分别绑定到码云和工蜂实现平台远程配置与本地文件rsa-publickey公钥的同步实现绑定然后就正常操作就可以上传了。具体操作步骤生成本地publickey生成方法1、cmd 运行到命令窗口ssh-keygen -t rsa -C your email将 SSH 私钥添加到 ssh-agentssh-agent 是一个管理 SSH 私钥的程序可以帮你记住密码避免每次使用都输入。在后台启动 ssh-agent,并将你的 SSH 私钥添加到 agenteval$(ssh-agent-s)ssh-add ~/.ssh/id_rsa3、打开rsa.pub将 SSH 公钥添加到你的 Git 账户复制publicKey到相应的代码仓库平台上面是GIT码云平台这里是工蜂平台服务端与本地的关联度已经绑定。如果是多台电脑可以多次生成绑定代码仓库平台可以绑定多个公钥。客户端配置用tortoiseGIT工具上传GIT如果未配置好则会出现一些错误1、tortoisegit常见错误报错Disconnected no supported authentication methods available(server sent: publickey)解决将客户端程序替换为git的ssh.exe的程序这样在推送时会自动加载本地公钥服务器就能验证通过了用Tortoise拉取找不到SSH配置GIT安装目录下的SSH.exe作为客户端验证SSH公钥这样就实现了仓库公钥与本地工具的同步。再正常添加远程地址就可以实现码云和工蜂等多平台的上传。如何在已经Git仓库中查找到SSL密钥场景办公室电脑已经安装好GIT回家笔记本上要安装GIT管理仓库或者笔记本上原来已经有码云的仓库管理要增加工蜂按上面场景可以知道在本地电脑上创建SSL然后把SSL上传到代码仓库平台再配置帐号密码这样就能实现对接了。如何在码云的Git上获取本地SSL密钥。在Windows环境步骤打开已经存在的本地仓库右键 点击 Git GUI Here点击help点击show SSH Key,就得到公钥二种、Linux环境下已经存在仓库1.进入git命令框2.输入 ls ~/.ssh 查看ssh目录下的文件。如下图有两个一个公钥一个私钥然后查看pub这个文件就是公钥匙。查看本地git查看git公钥私钥的方式3.查看公钥 cat ~/.ssh/id_rsa.pub 如图常见报错可以通过图形化GIT查看SSH密码也已经在平台登记了SSH密钥但本地克隆报无权限。AdministratorSD20251030OWJO MINGW64 /e/JavaRoot $eval$(ssh-agent-s)Agent pid1786AdministratorSD20251030OWJO MINGW64 /e/JavaRoot $ ssh-add ~/.ssh/id_rsa Identity added: /c/Users/Administrator/.ssh/id_rsa(35264qq.com)AdministratorSD20251030OWJO MINGW64 /e/JavaRoot $gitclone gitgit.code.tencent.com:huide-group/wxq-crm.git crm Cloning intocrm... Unable to negotiate with106.52.160.162 port22: no matchinghostkeytypefound. Their offer: ssh-rsa fatal: Could notreadfrom remote repository. Pleasemakesure you have the correct access rights and the repository exists.报错核心不是 SSH 密钥认证失败而是本地 OpenSSH 版本过新默认禁用了老旧的ssh-rsa主机密钥算法而远程腾讯工蜂git.code.tencent.com仅提供了ssh-rsa算法导致双方无法协商出匹配的密钥类型进而连接失败通过修改本地 SSH 配置文件指定对腾讯工蜂服务器启用ssh-rsa算法步骤如下在 Git Bash 中执行命令打开 / 创建 SSH 配置文件bash运行vim ~/.ssh/config进入 vim 编辑模式后按i键切换到「插入模式」粘贴以下配置内容专门针对腾讯工蜂的域名配置config# 配置腾讯工蜂服务器git.code.tencent.comHost git.code.tencent.com HostName git.code.tencent.com UsergitHostKeyAlgorithms ssh-rsa PubkeyAcceptedAlgorithms ssh-rsa配置说明Host git.code.tencent.com仅对该域名生效不影响其他平台GitHub/Gitee的 SSH 连接后两行明确启用ssh-rsa算法解决协商失败问题配置完成后按Esc键退出插入模式输入:wq保存并退出 vim 编辑器无需额外操作直接在 Git Bash 中执行原克隆命令即可成功#bash直接运行gitclone gitgit.code.tencent.com:huide-group/wxq-crm.git crm同时也可以用tortoiseGIT进行图形化操作在使用 Git 进行克隆仓库时如果仍然跳没有权限1、排查版本加密方式Totorse可能支持rsa确认 Git 配置确保你的 Git 配置是正确的特别是 SSH 密钥的设置。首先你可以尝试在命令行中运行以下命令来测试 SSH 连接ssh-Tgitgit.code.tencent.com这应该会提示你输入你的 SSH 密钥对应的密码如果你设置了密钥密码的话。如果这个命令失败可能是因为 SSH 密钥没有正确设置或者密钥与 Git 服务器不匹配。检查 SSH 密钥确保你的 SSH 密钥已经添加到你的 SSH 代理中并且已经添加到你的 Git 服务如 Tencent Code的账户中。你可以通过以下命令将你的私钥添加到 SSH 代理eval$(ssh-agent-s)ssh-add ~/.ssh/id_rsa确保~/.ssh/id_rsa是你的私钥文件路径。如果使用的是其他名称或位置请相应修改。检查仓库 URL确认你使用的仓库 URL 是正确的。有时候URL 可能因为权限更改或仓库重命名而需要更新。你可以在 Tencent Code 的仓库页面上找到正确的 URL。使用 HTTPS URL 替代 SSH URL如果你仍然遇到问题可以尝试使用 HTTPS URL 来克隆仓库gitclone--progress-vhttps://git.code.tencent.com/dashuai2024/Mes.git这种方法有时可以绕过 SSH 相关的问题。检查网络问题确保你的网络连接是正常的特别是如果你在公司或使用 VPN可能需要特定的网络配置才能访问外部 Git 服务。使用 Git GUI 或 IDE 的克隆功能如果你使用的是像 GitHub Desktop、GitKraken 或 Visual Studio Code 等 GUI 工具它们通常有内建的克隆功能可以更容易地处理一些网络或认证问题。查看错误信息仔细查看 Git 命令输出的错误信息它可能会给出更具体的错误原因比如权限问题、网络问题或其他配置错误。如果以上步骤都不能解决问题可以考虑查看 Git 的日志输出通过增加-v或--verbose参数来获取更多信息或者联系 Tencent Code 的支持团队寻求帮助。