git多账户管理: 区分全局账户和本地账户
问题
公司使用gitlab私有仓库,开发把代码clone下来,并配置了全局账户,这样每次提交不用登陆,然后自己在github私有仓库的代码clone下来后续如何配置提交?
解决方案
针对使用https作为git地址的方法:
采用git提供的本地存储账户信息功能,把github自己的账户配置上本地登录信息.
步骤
- 查看项目地址
git remote -v
得到 https://github.com/XXX/YYY.git 的项目地址,XXX:为你的用户名, YYY是你的项目名, 复制下来,其实直接从github仓库中copy也一样
- 设置新的带用户名的地址,即在https://和github之间加上”用户名@”即可
git remote set-url origin https://XXX@github.com/XXX/YYY.git
- 设定本地项目的账户密码存储
git config --local credential.helper store
- 正常修改代码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 感谢!