右下角点一点关注,小礼物走一走!

git在本地项目多分支情况下切换ssh 和 http

git在本地项目多分支情况下切换ssh 和 http 

 

1.打开本地项目中 .git/config  ,可以看到 “[remote "origin"] ” 中有一个url(如图所示):

 

 

2.最单的方法是直接修改,在gitlab/github 找到对应的项目,复制出http的链接,如下图:

3.修改后的config如下图所示

4. 另外一个比较麻烦的方法如下:

【通过命令行控制】

  (1) git remote remove origin;(origin为config中有url那个,不清楚的可以对比上图参考理解)

  (2) git remote add origin url

 

【具体操作如下】

 (1) 进入项目根目录

 (2) git remote remove origin,随后ssh 的url没了,这句指令就是移除origin,而其他分支都依赖于origin的URL,所以都会消失,如下图所示

 

  

(3)git remote add origin url (url为gitlab/github的http链接)

(4) 修改origin的URL后效果如下:

(5)pull代码时就会出问题,git会给提示,按照提示操作就好

 

(6) 我当前的分支是'daiyunzhou'所以指令为:

  git branch --set-upstream-to=origin/daiyunzhou daiyunzhou

 

 (7)提交其他分支的时候都需要重复(6)的操作,但是origin/<branch> 中的branch要对应当前提交的分支,结束。

 

【注意】

  (1)直接在config中手动修改url最为方便快捷;

  (2)使用ssh 时,每次fetch,push的时候不需要输入账号密码,单数需要添加ssh key,相对安全;

    (3)  使用http的时候,每次fetch,push的时候需要输入账号密码;

 

posted @ 2018-02-07 12:34  DIEW  阅读(2258)  评论(0编辑  收藏  举报