当前位置:   article > 正文

git切换用户、多用户切换的正确方式 git commit和git push 切换用户_gitlab多个账号命令行 怎么切换

gitlab多个账号命令行 怎么切换

由于最近自己搭建了一个GITLAB服务器,为了测试权限。所以会涉及到使用不用的用户进行git commit 和git push 操作。

通过百度搜索以后,发现绝大部分给的答案是:

git config --global user.name "xxx" 

git config --global user.email "xxx" 

通过实验以后发现。这种方式并不能完全切换用户。这样的方式只会影响到git commit的时候的用户。 对于git push时候用到的用户是完全没有用的。

而且git config --global 这个命令也并不完全正确。 如果你的git本地路径有local配置信息,那么git config --global 这个命令对于git commit 时候的用户也起不到修改作用。

下面来分析一下问题原因:

  1. git config --global 这个命令只是改变git的全局配置文件。 实际上面有git 有三种配置文件, local 、global 、sysytem。 他们的优先级是local > global > system , 很显然如果你的本地git目录下面有local的配置,这条命令并不能改变你git commit 时候用到的用户名。
  2. git  commit git push 对于windows来说是实际用到的是两套用户信息。linux和mac应该也是,只是没有实验过。

正确的步骤:

步骤一: 更改git commit的时候用到的用户信息

git config --local user.name "xxx" 

git config --local user.email "xxx" 

git config --global user.name "xxx"  //非必须执行

git config --global user.email "xxx" //非必须执行

后面的git config --global 两条命令不一定要执行,刚才的配置文件已经说明了优先级。

步骤二:更改git push的的时候用到的用户信息。

方式一:对于windows系统, 选择控制面板-》凭据管理器-》windows凭据,删除里面类似git相关的的用户信息。下图中以git打头的相关数据。 这样你在敲git push就会弹出对话框让你重新输入用户名和密码。 输入你要更改的用户名和密码就可以了哦。

方式二:修改你本地git仓库里面的config文件。目录位于 .git -》config 文件 。在url前面手动输入用户名和密码 格式为 http://或者https://username:userpassword@具体的仓库地址(这里不要写协议名称,就是http,htthps). 示例 https://test:testpasswd@gitlab.test.com/test.git

使用方式二, 就不用删除控制面板里面的用户凭证,但只会影响一个git仓库,不会影响全体git仓库。 方式一会影响所有git仓库。

使用方式二,如果用户密码有特殊字符,需要进行url编码。附常用符号编码

字符URL编码
(空格)%20
"%22
#%23
%%25
&%26
(%28
)%29
+%2B
,%2C
/%2F
:%3A
;%3B
<%3C
=%3D
>%3E
?%3F
@%40
\%5C
|%7C

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/740903
推荐阅读
相关标签
  

闽ICP备14008679号