因公司限制SSH对外访问端口,所以公司内网可使用ssh连接GITLAB服务,但是外网无法使用,则外网必须使用http的方式访问gitlab,以下为2种切换ssh和http的方式
解决方案1
- 找到项目目录下的.git文件夹,修改config文件
- 在配置文件中加入http链接的URL,通过注释在http和ssh中切换
- 在http的URL中如未加上
username
和password
则需要每次很远程交互时账号密码验证
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
[remote "origin"]
# ssh连接的URL
#url = git@gitlab.code.linshimuye.com:YFZ/lsmy-portal.git
# http连接的URL
url = http://username:password@gitlab.code.linshimuye.com:9078/YFZ/lsmy-portal.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "release-181231"]
remote = origin
merge = refs/heads/release-181231
- 如不想在url中加入账号密码,可使用记住密码命令
# 设置记住密码(默认15分钟):
git config --global credential.helper cache
# 如果想自己设置其他时间,比如1小时:
git config credential.helper 'cache --timeout=3600'
解决方案2
- 使用git命令修改远程地址
# 移除远程ssh方式的仓库地址
git remote rm origin
# 增加https远程仓库地址
git remote add origin http://username:password@gitlab.code.linshimuye.com:9078/YFZ/lsmy-portal.git