Windows下Git多账号配置(附github最新上传)(上)

简介: Windows下Git多账号配置(附github最新上传)(上)

前言


本人之前使用git未注意到多账户的管理,所以用起来比较繁琐,在网上几经搜索后发现现有的教程均存在不通用的情况,而且在去年10月github更新后使用git上传也和之前不同。为此整理了一份最新的Git多账号配置上传博文。


1. 生成git账号公钥秘钥


1.1 生成gitlab账号公钥秘钥


在C:\Users\Administrator\.ssh(这个目录不绝对,因人而异)下打开git bash或cmd,执行命令ssh-keygen -t rsa -C user.email,例如ssh-keygen -t rsa -C xxxxxxxxx@xxx.com,然后命名为id_rsa_gitlab,输入密码(可以不设置,一直按回车)


20210226145627620.png


1.2 生成oschina账号公钥秘钥


执行命令ssh-keygen -t rsa -C xxxxxxxxx@xxx.com创建oschina对应的sshkey,命名为id_rsa_oschina。其余均和gitlab一致


20210226145752849.png


1.2 生成github账号公钥秘钥


执行命令ssh-keygen -t rsa -C xxxxxxxxx@xxx.com创建github对应的sshkey,命名为id_rsa_github。其余均和gitlab一致


20210226145837335.png


2. 公钥拷贝及上传


2.1 秘钥位置存储


把上面得到的文件拷贝到git默认访问的.ssh目录(win10在用户目录下,本文C:\Users\Administrator\.ssh)

除了秘钥文件之外,config文件是后面的步骤中手动生产的,known_hosts文件是后续自动生产的


20210226150120801.png


2.2 config配置


在C:\Users\Administrator\.ssh目录下创建一个config文本文件,每个账号配置一个Host节点。主要配置文件内容


# github-1 account
Host u1.github.com
  HostName github.com
  User user1
  IdentityFile C:\\Users\\Administrator\\.ssh\\id_rsa_github1
  PreferredAuthentications publickey
# github-2 account
Host u2.github.com
  HostName github.com
  User user2
  IdentityFile C:\\Users\\Administrator\\.ssh\\id_rsa_github2
  PreferredAuthentications publickey
# gitlab account
Host gitlab.com
  HostName gitlab.com
  User iJarmin_lab
  IdentityFile C:\\Users\\Administrator\\.ssh\\id_rsa_gitlab
  PreferredAuthentications publickey
# oschina account
Host git.oschina.net 
    HostName git.oschina.net
    User username2
    IdentityFile C:\\Users\\Administrator\\.ssh\\id_rsa_oschina
    PreferredAuthentications publickey

 

配置项说明:


Host      ##主机别名
HostName  ##服务器真实地址
IdentityFile  ##私钥文件路径
PreferredAuthentications  ##认证方式
User  ##用户名


将公钥上传到服务器


GitHub添加SSH key的方式如下图所示


20210226151059477.png


git.oschina.net添加SSH key的方式如下图所示:


20210226151119503.png


gitlab添加SSH key的方式如下图所示:


20210226151534259.png


2.3 进行测试是否成功


2.3.1 测试github


ssh -T git@github.com


提示 you,re successfully authenticated,but Github does not provide shell access


2.3.2 测试gitlab


ssh -T git@gitlab.com


提示welcome to gitlab


2.3.3 测试oschina


ssh -T git@git.oschina.net


提示welcome to Git


20210226151004173.png


2.4 配置账户的username和email


全局配置(任意位置执行)


首先一般仅需要一次配置时候,一般可以使用全局配置读取配置。加载的优先策略为先执行局部配置读取,再进行全局配置读取


>git config --global user.name "github's Name"
>git config --global user.email "github@xx.com"
>git config --list


为了保证上传的稳定,避免错乱,我们在使用时需要注意,如果一个网站有多个账户时,最好不要设置全局的 username 和 email


取消全局 username, email


>git config --global --unset user.name
>git config --global --unset user.email


如要在repo中使用 user1 进行操作,进入repo目录后,先设置username 和 email,再进行其他操作


>git config user.name "github's Name"
>git config user.email "github@xx.com"


同样的,如果想在repo中切换为 user2 进行操作,则重新设置username和email(同上)后,再进行其他操作


相关文章
|
1月前
|
开发工具 git
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
197 69
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
|
14天前
|
网络安全 开发工具 git
解决 Git 访问 GitHub 时的 SSL 错误
通过上述步骤,可以有效解决 Git 访问 GitHub 时的 SSL 错误。推荐优先更新 CA 证书和正确配置 Git 使用 CA 证书,避免禁用 SSL 验证。如果问题持续,可以切换到 SSH 方式访问 GitHub,确保连接的安全性和稳定性。希望这些内容对您的学习和工作有所帮助。
65 3
|
1月前
|
Devops Shell 网络安全
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
94 16
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
|
3月前
|
网络安全 开发工具 git
解决fatal:remote error:You can’t push to git://github.com/username/*.g
通过上述诊断与修复步骤,绝大多数的推送错误都能得到有效解决,确保您的Git工作流顺畅无阻。
313 1
|
3月前
|
Linux 网络安全 开发工具
IDEA如何配置git和github
【11月更文挑战第14天】本指南详细介绍了如何在 IntelliJ IDEA 中配置 Git 和 GitHub,包括检查和设置 Git 路径、测试配置,以及通过 SSH 或 HTTPS 方式配置 GitHub 仓库的具体步骤。完成配置后,用户可在 IDEA 中轻松进行版本控制操作。
531 0
|
4月前
|
Unix Shell 网络安全
git学习六:(bug总结)git@github.com: Permission denied (publickey).等
本文是关于解决在使用Git和GitHub时遇到的“git@github.com: Permission denied (publickey)”错误的指南。文章提供了详细的步骤,包括确认SSH Agent运行状态、检查密钥配置、确保密钥匹配、验证仓库URL、检查权限和代理设置,以及配置SSH文件。这些步骤帮助用户诊断并解决SSH认证问题。
545 0
|
5月前
|
开发工具 git 开发者
掌握版本控制的艺术:Git 与 GitHub 的高效使用指南
在软件开发中,版本控制对于代码管理和团队协作至关重要。本文详细介绍了 Git 的核心概念与命令,包括初始化、创建仓库、文件跟踪、分支管理和远程仓库操作。同时,探讨了如何利用 GitHub 进行项目组织、代码审查及自动化工作流。通过遵循最佳实践,如频繁提交、清晰的信息记录和合理使用分支,开发者可以提升工作效率和团队协作能力,确保项目的持续成功。
|
5月前
|
Shell 网络安全 开发工具
Git,GitHub,Gitee&IDEA集成Git
Git提交项目到GitHub简洁版、版本控制、安装、常用命令、分支、团队协作机制、Github、Gitee远程仓库、IDEA集成Git、IDEA集成Github、IDEA集成Gitee
|
5月前
|
Shell 网络安全 开发工具
fatal: unable to access 'https://github.com/wolfcw/libfaketime.git/': Encountered end of file
fatal: unable to access 'https://github.com/wolfcw/libfaketime.git/': Encountered end of file
|
5月前
|
存储 Shell 开发工具
8-8|windows上Git报错
8-8|windows上Git报错