站点图标 独书先生

git多账户管理: 区分全局账户和本地账户

问题

公司使用gitlab私有仓库,开发把代码clone下来,并配置了全局账户,这样每次提交不用登陆,然后自己在github私有仓库的代码clone下来后续如何配置提交?

解决方案

针对使用https作为git地址的方法:
采用git提供的本地存储账户信息功能,把github自己的账户配置上本地登录信息.

步骤

  1. 查看项目地址
git remote -v

得到 https://github.com/XXX/YYY.git 的项目地址,XXX:为你的用户名, YYY是你的项目名, 复制下来,其实直接从github仓库中copy也一样

  1. 设置新的带用户名的地址,即在https://和github之间加上”用户名@”即可
git remote set-url origin https://XXX@github.com/XXX/YYY.git
  1. 设定本地项目的账户密码存储
git config --local credential.helper store
  1. 正常修改代码push一次,第一次会让你输入密码,之后就不用了
    git常用操作

tips:

查看是否有credential.helper

git config --global -l
git config --system -l

清除全局设置

git config --global --unset credential.helper
git config --system --unset credential.helper

我的是使用 git config --system -l 打印中包含 credential.helper=manager
说明全局已经配置

文章 github多账号如何切换? 中提到要把全局配置unset掉,我没弄,本地仓库也可以正常push,所以有什么细节可以参考下原文

https://appsoftea.com/zh/git-multiple-account/
引用自: https://www.zhihu.com/question/23028445 感谢!

退出移动版