Windows下配置多个Git账号

1. 为什么会用多个git账号?

  • 不同git账号对应不同代码托管平台,如:github、bitbucket、gitlab、gitee(码云)等
  • 2个GitHub账号,用于测试(最近需求,之前没研究过github协同开发,所以注册了个小号来测试)

2. 不同git账号对应不同代码托管平台,以github和bitbucket为例

1)假设你已经生成了不同的 sshkey,其中针对不同的平台可以命名如下:

  • github:id_github_rsa
  • bibucket:id_bitbucket_rsa
  • 注意:为了管理方便,把id_github_rsa、id_github_rsa.pub 和 id_bitbucket_rsa、id_bitbucket_rsa.pub都移到同一目录下

2)我的移动到 /c/Users/xxx/.ssh/目录下,在该目录下手动创建文件“config”(无后缀名),编辑config文件,如下:

# github account [github_user]
Host github.com
HostName github.com
User github_user
IdentityFile /c/Users/xxx/.ssh/id_github_rsa
IdentitiesOnly yes

# bitbucket account [bct_user]
Host bitbucket.org
HostName bitbucket.org
User btc_user
IdentityFile /c/Users/xxx/.ssh/id_bitbucket_rsa
IdentitiesOnly yes

3)通过上述配置后,你就可以使用多个git账号操作对应的代码托管平台(假设你使用同一个email注册不同的平台,否则的话,需要取消全局email和username设置,并且在使用前通过git config命令切换账号,具体请看 3. 同一个平台GitHub下的不同git账号)

3. 同一个平台(GitHub为例)下的不同git账号

1)config 配置如下:

# github account [user1]
Host github.com
HostName github.com
User user1
IdentityFile /c/Users/xxx/.ssh/id_user1_rsa
IdentitiesOnly yes

# github account [user2]
Host github.com
HostName github.com
User user2
IdentityFile /c/Users/xxx/.ssh/id_user2_rsa
IdentitiesOnly yes

2)在使用时需要注意,不能设置全局的 username 和 email

# 取消全局 username, email
>git config --global --unset user.name
>git config --global --unset user.email

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

>git config user.name "user1"
>git config user.email "user1登陆GitHub的email"# 同样的,如果想在repo中切换为 user2 进行操作,则重新设置username和email(同上)后,再进行其他操作

4. 可能遇到的问题

1)git push:remote: Permission to XXXA/xxxx.git denied to XXXB

原因:

  • 之前为了测试GitHub的一些机制,我在同一个电脑上配置了两个GitHub账号:southday | lcxv
  • 最近在向southday账号下的项目push代码时,出现:remote: Permission to XXXA/xxxx.git denied to lcxv
  • 这是由于电脑使用git bash配过SSH,系统已经将指向github.com的用户设置为了lcxv,每次push操作的时候,默认读取保存在本地的用户lcxv

解决方法:

  • 解决这个问题最简单的办法是删除本机中GitHub的lcxv登陆session
  • 重新提交的时候,git会要求你输入新的用户名和密码,输入后就可以成功提交了

5. 参考内容

转载请说明出处!have a good time :D

原文地址:https://www.cnblogs.com/southday/p/10011261.html

时间: 2024-11-13 13:01:38

Windows下配置多个Git账号的相关文章

Windows 下配置 Vagrant 环境

Vagrant是一个基于 Ruby 的工具,用于创建和部署虚拟化开发环境.它使用 Oracle 的开源VirtualBox虚拟化系统. Vagrant 在快速搭建开发环境方面是很赞的,试想一个团队中,大家开发同一个东西,以前每个人都要自己搭建一套开发环境 ,有了 Vagrant,你只需要搭建一份,然后分发给所有团队成员,这样大家都立刻就有完全相同的开发环境了,即便有成员在Windows 下,也可以方便的使用 Linux 环境开发.如果团队中来了新人,也不需要手把手教他怎么搭建开发环境,给他丢一个

配置多个 git 账号的 ssh密钥

背景 在工作中,我们通常会以 ssh 的方式配置公司的 git 账号,但是平时也会使用 github 管理自己的项目.因此,我们需要为自己的 github 创建一个新的 git 账号,这就需要生成新的 ssh 密钥.下面总结了创建多个互相独立的 ssh 密钥的步骤(以公司的和自己 github 的为例). 步骤(以 mac 为例) 在文件夹 ~/.ssh/ 下创建两个文件夹,分别为 company/ 和 github/,前者存放公司的 ssh密钥,后者存自己 github 的 ssh 密钥.下面

Windows下配置QT OpenCV

OpenCV-Study:Windows下配置OpenCV 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境: 主机:XP OpenCV版本:2.4.0 说明: 配置参考链接: http://blog.csdn.net/youhaipeng/article/details/7452972 http://blog.csdn.NET/youhaipeng/article/details/7453034 测试代码: .pro文件 [plain] vi

windows下配置nginx+php环境

windows下配置nginx+php环境 刚看到nginx这个词,我很好奇它的读法(engine x),我的直译是“引擎x”,一般引“擎代”表了性能,而“x”大多出现是表示“xtras(额外的效果)”,那么整个词的意思就是类似“极致效果”,“额外性能”.当然这里不是要来唠嗑,以上是题外话. nginx相较于我们熟悉的apache.IIS的优势,就我浅入浅出的了解,在于“反向代理”和“负载均衡”.因此考虑到能够为Web服务器节省资源,它可以代替apache来提供Web服务.那么上正题了,ngin

windows下配置android-NDK环境

第一步,下载安装cygwin,(模拟Linux 的编译环境),我们可以到Cygwin的官方网站下载Cygwin的安装程序,地址是:  http://www.cygwin.com/; 开始安装Cygwin,安装教程http://jingyan.baidu.com/article/48a42057accae3a92525045a.html 第二部,下载ndk,http://developer.android.com/tools/sdk/ndk/index.html:下载完成,解压: 第三步,在Cyg

windows下配置Sublime Text 2开发Nodejs

1 下载 Sublime Text 2 http://www.sublimetext.com/ 2 下载Nodejs插件,下载ZIP包 https://github.com/tanepiper/SublimeText-Nodejs 3 解压ZIP,重命名为Nodejs 4 将Nodejs复制到C:\Users\Administrator\AppData\Roaming\Sublime Text 2\Packages目录下 5 重启Sublime Text 2 ->Tools-->Build S

windows下配置ssh(FreeSSHD + putty)

windows下配置ssh(FreeSSHD + putty): 1.关于配置过程找到一篇很好的博客,推荐大家先好好看一下,这篇博文解决了大方向问题. 地址:http://blog.csdn.net/lililiyunqiang/article/details/39337319 2.另附上IBM的step by step教程,思路很清晰,也讲了很多细节. 地址:https://wthwdik.wordpress.com/2011/03/28/how-to-get-freesshd-public-

windows下配置Groovy

windows下配置Groovy环境的教程网上很容易搜到,我参考的是这篇文章,安装过程一切顺利,然而在cmd中运行Groovy -v命令时返回ERROR: JAVA_HOME is set to an invalid directory,第一反应是我的JAVA_HOME变量配置的有问题,但cmd中运行java -version正常,应该不是这个变量的问题. 谷歌后发现这是Groovy的一个issue,这确实是有点坑,而且发现有这个问题还没有在最新的版本里面进行更改,so没办法,只能自己改了,废话

Windows 下配置JDK环境变量

1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为D:\Program Files\Java\jdk1.6.0:   2.安装完成后,右击“我的电脑”,点击“属性”: 3.选择“高级”选项卡,点击“环境变量”: 4.在“系统变量”中,设置3项属性,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建” 5.①JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径D:\java\jdk1.5.0_08(jdk