背景
在我们的开发工作中,我们会有这样的需求:即在一台电脑上管理多个账户。比如:我在GitHub上有一个账户,在Gitlab上有一个账户,在CSDN的CODE上也有一个账户。我们需要为不同的账户生成不同的密钥,但是在生成密钥的时候默认的是id_rsa私钥和id_rsa.pub公钥,但是我们可以改公私钥的文件名。生成公钥的密令如下:ssh-keygen -t rsa -C “您的邮箱地址”在这个命令里你可以填写一个公私钥的文件名,比如new_id_isa。但是Git在匹配公私钥的时候只会找默认的id_isa和id_isa.pub,所以这个时候呢,我们就需要把我们刚才创建的这个new_id_isa加入到Git的管理中。
实现
在.ssh下面创建config文件
命令如下:
进入到.ssh文件夹下:cd ~/.ssh
创建config文件: touch config
在config文件里输入一些内容:
Host gitlab.alibaba-inc.com HostName gitlab.alibaba-inc.com User git IdentityFile C:/Users/zkn/.ssh/id_rsa Host code.csdn.net HostName code.csdn.net User git IdentityFile C:/Users/zkn/.ssh/new_id_rsa接着执行: ssh -vT git@code.csdn.net
然后就OK了。这个时候你在去关联你的远程库,pull push都没问题了。
注意:Host 相当于是别名,最好HostName保持一致,不一致也没问题。
User git这个是用的git协议。
IdentityFile 就是你新创建的私钥的文件。
PS
网上有说用ssh-add ~/.ssh/id_rsa_work这个命令的,但是八九成是不行的,如果可以的话,那你是很幸运。
相关推荐
有时,开发者在一台电脑上需要同时使用多个GitHub账户进行工作,例如一个用于工作,另一个用于个人项目。如果一台电脑上只有一个SSH密钥,那么在进行克隆、拉取、推送等操作时,GitHub将无法区分哪个账户正在操作。...
当多个开发者修改了同一部分代码时,Git可能会报告冲突。此时,你需要手动编辑冲突文件,解决冲突后提交。TortoiseGit等图形化工具提供了直观的冲突解决界面。 在Windows环境下,TortoiseGit是一个流行的Git图形化...
或者在同一台电脑上创建两个不同的用户账户,一个作为服务器端,另一个作为管理端。 2. **一台Windows电脑**:用于客户端操作,如克隆仓库等。 3. **版本控制文件**:包含Windows下的Git工具集,用于客户端的操作。 ...
- **多账号问题**:如果多人共用同一台电脑进行开发,需要确保使用相同的 GitHub 账号进行操作,避免权限问题。 - **二级密码设置**:为保护账户安全,建议在 GitHub 账号设置中开启双重认证功能。 - **代码审查**:...
此外,如果你有多台设备或多个GitHub账户,你可能需要为每台设备和每个账户生成和配置不同的SSH密钥,以保持良好的安全实践。 总的来说,理解和熟练操作SSH密钥是GitHub用户必备的技能之一,这不仅简化了工作流程,...
Git是一种分布式的版本控制系统,用于追踪计算机文件的变化并协调多个用户间的协作。相比于其他版本控制系统(如SVN),Git具有以下显著特点: - **基于文件快照的形式记录版本**:Git记录每次提交时文件的状态快照...
Dropbox则是一个云存储服务,它允许用户在多台设备间同步文件,并提供文件历史版本和共享链接等功能。然而,Dropbox并不直接支持Git的版本控制功能。 要将Dropbox用作Git的远程仓库,我们可以利用Python编写一个...
这在一台电脑需要访问多个Git仓库,且每个仓库的私钥不相同的情况下,显得尤为重要。这通常涉及配置SSH的config文件,设置不同的主机别名,对应不同的SSH key,以便在操作不同仓库时,能够正确地匹配和使用相应的...
PHP后台通常由多个模块组成,如用户管理、商品管理、订单管理、支付接口集成等。开发者需要熟悉PHP语法、数据库操作(如MySQL)、Web安全以及常见的框架(如Laravel、ThinkPHP等)来构建一个稳定、高效的后台系统。 ...
总之,Hudson作为一个强大的持续集成工具,它的安装和配置虽然涉及多个步骤,但通过提供的文档和war文件,你可以轻松地在本地或远程服务器上部署和管理Hudson实例,从而提高你的软件开发效率和质量。
如果需要监控多台服务器,可以使用逗号分隔多个条目,每个条目遵循上述格式。 在Tigase服务器端,还需要进行以下配置: 1. 添加必要的JAR文件到Tigase服务器的类路径,包括`jdmkrt.jar`和`tigase-extras.jar`。这...
另一个文件"gao_master.zip"可能是包含更深层配置或更新版本的压缩文件,"master"通常与Git版本控制系统中的主分支相关,可能暗示这是一个基础或主要的配置集。 综合以上信息,我们可以得出以下知识点: 1. FongMi...
Puppet采用了C/S(Client/Server)的星型架构,其中所有客户端均与一个或多个中心服务器通信。这种架构确保了所有客户端都能够定期(默认每30分钟)向服务器请求最新的配置信息,并与之保持同步,从而实现资源的统一...
20. **邮件客户端**: Spark或Airmail提供良好的邮件管理体验,整合多个邮箱账户。 以上就是程序员在新Mac上可能会安装的一些常用工具,这些工具能够帮助他们更好地完成日常开发工作,提高工作效率,同时享受Mac OS...
**GitHub Desktop 220:一个直观的Git和GitHub管理工具** GitHub Desktop是GitHub官方推出的一款免费、跨平台的版本控制系统,专为简化Git的使用而设计,特别适合那些对命令行界面不太熟悉的用户。这款应用程序提供...
在本Java实现的银行自动存取款项目中,我们涵盖了多个关键的IT知识点,这对于学习Java编程和理解银行系统操作流程具有重要的实践价值。以下将详细介绍这些知识点: 1. **面向对象编程(OOP)**:Java是面向对象的...
1. **系统要求**:首先,你需要一台运行 Windows 386(32位)系统的服务器或个人计算机。确保系统满足 Gogs 的硬件和软件需求,通常需要至少 512MB 内存和一个可用的数据库(如 SQLite、MySQL 或 PostgreSQL)。 2....