共用服务器多git账号配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了共用服务器多git账号配置相关的知识,希望对你有一定的参考价值。

参考技术A 一台共用服务器上多人共同使用,多个git工程每个工程的地址和账号密码又是不一样。
使用global 此时在/home/usrname下.gitconfig 会生成设置全局的git用户名及邮箱账号

如下命令可谓单个工程设置用户名及邮箱账号,存放在工程目录下.git/config文件中

1.首先为不同的工程配置不同的Git账号

注意:这里git config命令没有带—global,表示这是一个局部的设置,也就是这个用户是当前项目的,而不是全局的。
2.为不同的用户生成SSH密钥
一般的Git服务器为了安全,都会需要我们提供一个安全的SSH密钥,默认情况下,生成密钥的文件名都是一样的,但是不同的用户,必须设置不同文件名的密钥文件,否则会发生覆盖。密钥生成后,添加到服务端(如Github)

密钥存放在用户目录下.ssh路径下。

//B账户的私钥

添加完后,可以使用ssh-add来查看密钥列表

其中的remore地址是url = git@github.com :sample.git,这时候,我们需要修改跟密钥对应的地址,上面在配置ssh时,为每个Hostname配置了一个host的别名,这时候,我们就不能使用原来的Hostname来提交了,要用别名来代替Hostname。
###############

git多账号管理

公司项目放在了 gitlab,自己项目放在了 github,小程序项目放在了 微信的代码管理工具(https://git.weixin.qq.com/)上,如何进行git多账号管理呢?

这玩意没难度,看到陌生的东西别太紧张~

1.看你本地有没有ssh

 这一步可有可无~想看的就在 git bash 执行如下命令

ls -al ~/.ssh

你也可以在文件夹查看,目录一般是 C:Usersadmin.ssh。

更多资料可查看检查现有 SSH 密钥

 

2.为每个账号生成SSH密钥

git bash 执行如下命令:

$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
your_email@example.com 替换你成 Git账号的电子邮件地址。
网上可能很多都是用的  ssh-keygen -t rsa -C "your_email@example.com" 。
这2者的区别是上面那条命令(有-b 4096的)可以让本地机器ssh登录远程机器上的GitHub账户无需输入密码。

注意事项:
SSH默认的生成文件是 id_rsa.pub 和 id_rsa,如果你已经生成过SSH了,那么你在新建另一个账号的SSH的时候,它会提示你 "Your public key has been saved in /c/Users/admin/.ssh/id_rsa.pub",这个时候你需要另取一个名字,如生成github账号的你可以设置为 /c/Users/admin/.ssh/id_rsa_github。

3.把对应的公钥添加到对应的平台上

SSH生成完之后,把每个账号的SSH(每个账号对应的 id_ras.pub 里面的内容)分别添加到它对应平台。
一般都是在 设置(setting)--> SSH 里面添加。以gitlab为例:

技术图片

 

4.修改.ssh目录下的config文件,没有就创建一个

该文件用于配置私钥对应的服务器, 主要的两项就是User和IdentityFile, Host和Hostname可以随意填写。

#gitlab
       Host gitlab.shfengqu.com
       HostName gitlab.shfengqu.com
       IdentityFile ~/.ssh/id_rsa //默认私钥的名字
       User ***

#github
       Host github.com
       HostName github.com
       IdentityFile ~/.ssh/id_rsa_github //创建github账号时取的私钥的名字
       User ***

#wxapp
       Host git.weixin.qq.com
       HostName git.weixin.qq.com
       IdentityFile ~/.ssh/id_rsa_wxapp //创建微信的git账号时取的私钥的名字
       User ***

 

5.将私钥添加到SSH agent

这一步是为了让SSH识别新的私钥。

git bash 执行如下命令:

ssh-agent bash
ssh-add ~/.ssh/id_rsa_github
ssh-add ~/.ssh/id_rsa_wxapp

 id_rsa_github 和 id_rsa_wxapp 换成你自己的私钥名。就是你第2步时创建的名字。

 

6.检查配置是否成功

ssh -T git@gitlab.shfengqu.com
上面 gitlab.shfengqu.com 替换成 你自己配置的地址。

若添加成功返回如下图:

技术图片

 

以上是关于共用服务器多git账号配置的主要内容,如果未能解决你的问题,请参考以下文章

ssh-key 与 git账户配置以及多账户配置

Git的多账号登录配置

git 本地如何配置多平台账号|本地 git 账号关联远程 github/gitlab/gitee

git 本地如何配置多平台账号|本地 git 账号关联远程 github/gitlab/gitee

Windows下Git多账号ssh-key(复制自己用)

换了一台电脑用一个git账号 需要重新生成一个ssh key吗