git多账号配置及乱码问题处理

2019-07-08  本文已影响0人  丨面朝大海

一、git配置账号

配置全局用户名和邮箱
git config --global user.name *****
git config --global user.email ******@****

生产ssh
ssh-keygen -t rsa -C “******@***

捕捉ssh密钥到命令行
cat ~/.ssh/id_rsa.pub
然后将获取的ssh公钥放到对应的git setting中

二、git配置多个账号

在~/.ssh/目录 下创建config文件内容如下
创建文件说明:
1. linux创建文件touch config
2. windows直接在.ssh目录下新建config文件
文件内容如下:

#demo
Host git@git.gitlab.net
    HostName git.gitlab.net
    User demo
    IdentityFile /home/user/.ssh/id_rsa_demo

#test
Host git@git.test.net-yyyyy #这里不同
HostName git.test.net #这里一样
User test
IdentityFile /home/user/.ssh/id_rsa_test #这里不同
    
#github
Host github.com #这里不同(host不需要添加git@ 否则每次需要添加ssh  原因未知)
HostName github.com #这里一样
User github
IdentityFile /home/user/.ssh/id_rsa_github#这里不同
多个账号异常情况处理
  1. 切记将添加的ssh添加到ssh-add ~/.ssh/id_rsa_****本地ssh环境否则出现
    Permission denied (publickey).
  2. 如果出现以下异常请执行ssh-agent bash
    Could not open a connection to your authentication agent.
  3. 验证配置是否生效ssh -T git@git.oschina.net
    Hi HostName! You've successfully authenticated, but GitHub does not provide shell access
    以上表示成功
  4. 配置文件host中地址前加git@,注意以下错误表示文件格式错误,有中文空格等
    garbage at end of line; "#\345\257\271\345\272\224\347\232\204ssh\346\226\207\344\273\266"
  5. user.name user.email 默认使用的是全局的user.name user.email
    如果要使用单独的 user.name user.email,在文件目录下单独配置。
    git config user.name ****
    git config user.email ***@***.com

git命令行中中文乱码问题

  1. git status中乱码问题
    git config --global core.quotepath false
  2. git log和git commit中中文乱码问题
    git config --global i18n.commitencoding utf-8
    git config --global i18n.logoutputencoding utf-8

三、git常用命令

  1. 查看所有分支git branch -a
  2. 创建本地分支git checkout -b 分支名称
  3. 以本地分会创建远程分支git push origin 分支名称
  4. 删除文件,支持 *通配符
    git rm --cached app.iml//从版本库中rm 文件,working dicrectory中仍然保留,
    git rm -r --cached directory_name如果要删除目录下所有文件包括子目录中的 ,本地不
上一篇 下一篇

猜你喜欢

热点阅读