git push上传代码到gitlab上,报错401或403

之前部署的gitlab代码托管平台,采用ssh方式连接gitlab,在客户机上产生公钥上传到gitlab的SSH-Keys里,则git clone下载和git push上传都没问题,这种方式很安全。

后来应开发同事要求采用http方式连接gitlab,那么首先将project工程的“Visibility Level”改为“Public”公开模式,并且要保证gitlab的http端口像客户机开放。

后面发现了一个问题:
http方式连接gitlab后,git clone下载没有问题,但是git push上传有报错:
error: The requested URL returned error: 401 Unauthorized while accessing http://git.xqshijie.net:8081/weixin/weixin.git/info/refs
fatal: HTTP request failed

或者
The requested URL returned error: 403 Forbidden while accessing

实例如下:
假设git的url为http://git.wangshibo.net
[[email protected] ~]# mkdir /root/git
[[email protected] ~]# cd /root/git
[[email protected] git]# git init .
[[email protected] git]# git clone http://git.wangshibo.net:8081/weixin/weixin.git
Initialized empty Git repository in /root/git/weixin/.git/
remote: Counting objects: 10, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 10 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (10/10), done.

上面可以看出,已经能成功git clone下代码
[[email protected] git]# ll
total 4
drwxr-xr-x. 3 root root 4096 Nov 30 15:58 weixin
[[email protected] git]# cd weixin/
[[email protected] weixin]# ll
total 8
-rw-r--r--. 1 root root 15 Nov 30 15:58 heihei
-rw-r--r--. 1 root root 1 Nov 30 15:38 README.md

现在测试下git push
[[email protected] weixin]# git rm heihei
[[email protected] weixin]# touch test.file
[[email protected] weixin]# echo "123456" > test.file
[[email protected] weixin]# git add .
[[email protected] weixin]# git commit -m "this is a test"
[[email protected] weixin]# git push                                      //或者git push -u origin master
error: The requested URL returned error: 401 Unauthorized while accessing http://git.wangshibo.net:8081/weixin/weixin.git/info/refs

fatal: HTTP request failed

解决办法:
在代码的.git/config文件内[remote "origin"]的url的gitlab域名前添加gitlab注册时的“用户名:密码@”
如下,gitlab的用户名是wangshibo,假设密码是[email protected]!h8

查看gitlab界面里的登陆用户名:

然后修改代码里的.git/config文件
[[email protected] weixin]# cd .git
[[email protected] .git]# cat config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = http://git.wangshibo.net:8081/weixin/weixin.git
[branch "master"]
remote = origin
merge = refs/heads/master

修改如下:
[[email protected] .git]# cat config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = http://wangshibo:[email protected][email protected]git.wangshibo.net:8081/weixin/weixin.git
[branch "master"]
remote = origin
merge = refs/heads/master

时间: 2024-12-27 08:46:27

git push上传代码到gitlab上,报错401或403的相关文章

springboot上传代码到gitlab并发布上线操作

windows上传代码到gitlab操作 1.可以借助git bash工具,生成秘钥. 2.拷贝公钥密码到码云仓库 3.设置码云仓库, 添加公钥证书, 4.获得gitee项目地址,将项目pull到本地 5.创建项目,并将项目文件拷贝到本级目录(或者直接将项目拷贝到该目录下), 如下,启动项目,可以正常访问. 6.如上,项目正常运行,提交代码. 上传成功,gitee仓库查看, 自此,完成了java代码上传到码云仓库. 7.下面介绍服务器部署项目方式. Maven clean Maven packa

七牛上传同名文件为什么没有报错解答

有很多七牛的新用户,会遇到这样一个问题,上传代码中指定了scope为 scope="bucketname" 但是上传一个同样的文件,文件名字也一样,文件的key也一样的文件,没有报已经存在同名资源则会失败的消息. 问题解答 七牛只有在同名文件,不同文件资源的时候才会报614状态码,也就是文件资源已经存在的消息.否则同样会返回200状态码,和hash,key.

cloudstack上传模板时候的一个报错

最近在实施一个cloudstack的项目,接近尾声了,今天给客户做培训,在上传一个镜像的时候,发现如下报错: Failed to register template: 94d4c090-4d41-476b-a29e-30f2fcce05f8 with error:  HTTP Server returned 404 (expected 200 OK) 我检查了下httpd服务,发现服务器正常(上传ISO镜像,我直接用的Apache的httpd),尝试重启了httpd服务,问题得到解决.

springMVC:为MultipartFilte配置了上传文件解析器,报错或不能使用

一.问题描述为支持restful风格请求,并且应对可能上传文件的情况,需要在配置hiddenHttpMethodFilter过滤器之前配置MultipartFilter.目的是让MultipartFilter过滤器先将带文件上传的请求,进行解析.以便hiddenHttpMethodFilter可以取到”_method”参数,转化为相应的http动作. 既然multipartFilter要进行上传文件的解析,那么必然需要MutipartResolver,那么问题发生了! 二.报错:Unable t

最近在做支付宝支付,在本地测试一切正常,上传到服务器就遇到报错:

Warning: openssl_sign() [function.openssl-sign]: Unknown signature algorithm. in 这种问题有两种情况 1.php未开启php_OpenSSL扩展 2.php版本过低,不支持OPENSSL_ALGO_SHA256这样的参数 ---------------------------------------------------------------------------------------------------

magento upload http error 上传新产品的时候报错

最开始碰到这个错误的时候不知所措,记下来希望碰到这个问题的童鞋可以轻松解决 最开始以为是权限问题, 到处找, php.ini   memory_limit http.conf  各种限制配置,结果都没有效果 后来才发现一个地方说没有安装php图像看 GD, 我用yum安装GD 然后又报了一个 Destination folder is not writable or does not exists. 这个才是权限问题 “Destination folder is not writable or

通过Webstorm上传代码到Github、更新代码后同步到github及克隆github代码到本地的方法

导读: Github做为IT爱好者分享代码的一个知名的平台,广受大家喜欢,那么我们平时该怎么将自己写的代码上传到github上面保存并且提供给其他人参考? 我想方法不外乎如下几个: 1.直接在github网页上面上传代码(没试过) : 2.利用git工具,下载git然后利用命令行工具上传代码,这种方式需要更多的命令行知识,对于不熟悉命令行工具的小伙伴来说是个很头疼的事: 3.利用开发工具Webstorm来进行类似图形化方式上传代码,这种方法简单容易,也是本文重点要讲述的! 问题1:那么如何利用W

windows上传代码到github

上传代码到github上有很多种方法,在这里我介绍一种比较简单的一种.工具嘛,越简单越好用啊. 1.首先下载github在windows下的客户端 下载地址:https://desktop.github.com/ 这个客户端需要在线下载一些包.安装好了之后会出现下面这两个图标: 2.上传代码 一般情况需要将自己工程下的所有文件都上传上去,具体方式如下: (1)打开Git Shell (2)进入你的工程目录下 (3)执行如下命令即可上传: git init git add .        //注

mac下使用github 上传代码(转)

提起github相信大家都不会陌生,在这里就不再赘述了.作为开源代码库以及版本控制系统,使用好了确实会非常受益,再说的势利点,你找工作时给面试官说你经常维护自己的技术博客和github,相信你给他的印象会好很多. windows底下如何使用github,很多好心人都已经给了非常详细的解决方案,你只需问下度娘,她会帮你解决,这里对于windows底下的使用我也就不再赘述了.这里主要讲讲如何在mac底下使用github,我刚开始使用时,还是费了一点功夫的,因为网上的资料比较杂,有些不是太准确.故将自