# 报错内容
fatal: unable to access 'https://git.dev.tencent.com/chendongnan/sfedu_wx.git/': The requested URL returned error: 403

# 问题起源
https方式每次都要输入密码,按照如下设置即可输入一次就不用再手输入密码的困扰而且又享受https带来的极速。

设置记住密码(默认15分钟):
`git config --global credential.helper cache`

如果想自己设置时间,可以这样做:
`git config credential.helper 'cache --timeout=3600'`这样就设置一个小时之后失效

长期存储密码 **(不推荐)**:
`git config --global credential.helper store`

**不推荐这种,因为这里保存的账号和密码保存到了`~/.git-credentials`文件中,它会自动应用到每一个git clone/pull指令,如果在服务器里面有多个项目,那么克隆的不是该账号下的项目,就只会得到403错误。**

# 报错原因
原因是`git config --global credential.helper store`这个命令可以将用户名和密码长期全局地长期地存储在客户端(实际是客户端所在电脑,并非git的任何目录下,也就是说,即使重装git,该用户名和密码也存在)。因为,这里保存的账号和密码会自动应用到每一个`git clone`或者`git pull` 指令,如果想要克隆的不是该账号下的项目,就只会得到403错误。

# 解决办法
## 方法一
在最开始增加远程地址的时候带上用户名和密码:
https://yourname:yourpassword@git.dev.tencent.com/name/project.git

比如我的是这样:
`git remote add origin https://chendongnan:cdn19981003@git.dev.tencent.com/chendongnan/sfedu_wx.git`

## 方法二
如果已经使用命令`git remote add origin https://git.dev.tencent.com/chendongnan/sfedu_wx.git`添加了远程仓库地址。

在`~`目录下的`.git-credentials`文件中添加如下内容:https://chendongnan:cdn19981003@git.dev.tencent.com

**步骤:**
- 进入根目录:`cd ~`
- 显示根目录下隐藏文件看有没有`.git-credentials`文件:`ls -a`
- 有则添加内容,无则先创建这个文件,进入编辑命令:`vim .git-credentials`,添加如下内容保存退出:https://chendongnan:cdn19981003@git.dev.tencent.com

## 方法三
运行命令:`rm ~/.git-credentials`,删掉`git config --global credential.helper store`保存的账号和密码。回到每次输入用户名和密码。

Ubuntu中git pull远程仓库时显示403错误的更多相关文章

  1. git连接远程仓库时,出现“ Repository not found"的解决办法

    2018-08-25 今天连接远程仓库时,出现: 原来是远程仓库地址名字错了. 解决方法: 1.找到.git目录 2.进入.git找到config文件 3.修改config里面的远程地址url

  2. idea中git回退远程仓库版本

    工作中遇到,代码已提交并已提交到远程仓库,现需要回退到之前版本,记录如下: 记录当前版本的版本号和需要回退到版本的版本号. current version:85e7f32dfe421c5892a4e2 ...

  3. git删除远程仓库的某次错误提交

    改日写git的各种本地恢复 今天不小心把一个分支合并到master上了,上网查了一下回复的方法,简单来说就是: 在本地 把远程的master分支删除再把reset后的分支内容给push上去 新建old ...

  4. git在本地分支上 git pull远程分支时,状况

    git 在pull或者合并分支的时候有时会遇到这个界面.可以不管(直接下面3,4步),如果要输入解释的话就需要: 1.按键盘字母 i 进入insert模式 2.修改最上面那行黄色合并信息,可以不修改 ...

  5. 如何更改vs2013中git的远程仓库url地址

    可以通过修改Git库配置文件实现,请看下图:

  6. Git与远程仓库关联以及关联错误解决方法

    假设你github的用户名是  helloworld  ,你在上面创建了一个 名为 hello 的 repository. 一. 与本地仓库进行关联 1.1用原生ssh进行关联,速度快: git re ...

  7. nginx默认访问目录时显示403错误

    author :headsen chen date: 2018-04-25  17:17:25 nginx安装完成后默认的http页面里访问目录的话会报403的错误: 和Apache进行比较,Apac ...

  8. git从远程仓库中更新代码到本地仓库

    git从远程仓库中更新代码到本地仓库 有时候在使用git pull的时候,会莫名才报错.查了很多资料,尝试过git的很多命令.包括git fetch命令,都会报同样的错.最后终于发现了一条捷径,由网友 ...

  9. [转]git修改远程仓库地址

    原文链接:http://www.cnblogs.com/lazb/articles/5597878.html 问:Coding远程仓库地址变了,本地git仓库地址如何更新为最新地址 git修改远程仓库 ...

随机推荐

  1. 监控tomcat,自动启动

    tomcatID=`ps -ef |grep tomcat |grep -v 'grep'|awk '{print $2}'`  tomcatCount=`ps -ef|grep tomcat |gr ...

  2. javascript iframe跳转问题

    javascript iframe跳转问题如果在iframe里面有要点击跳转最外层的连接 要只能用<pre> <div onclick="parent.location.h ...

  3. python快速获取网页标准表格内容

    from html_table_parser import HTMLTableParser def tableParse(value): p = HTMLTableParser() p.feed(va ...

  4. ThinkPHP v5.1.x POP 链分析

    环境:MacOS 10.13 MAMAP Prophp 7.0.33 + xdebugVisual Studio Code前言我所理解的 POP Chain:利用魔术方法并巧妙构造特殊属性调用一系列函 ...

  5. JAVA继承中子父类的构造方法

    首先,构造方法本身会有一个隐式的无参构造(默认): ①不写构造方法,类中的第一行代码事实上有一个默认的无参构造(系统会隐式为你写好) public class Student { private St ...

  6. python:模块0

    一.模块是更高级的封装: 容器:数据的封装 函数:语句的封装 类   :方法和属性的封装 模块:模块就是程序,即每个.py文件 二.引入 import 模块名 from 模块名 import xx(函 ...

  7. Robot Framework自动化测试环境搭建

    robotFramework是一个通用的自动化测试框架来进行验收测试和验收测试驱动开发模式,它具有易于使用的表格的测试数据和关键字测试驱动方法,其测试功能可通过实现与python或java的测试库进行 ...

  8. Redis的内存淘汰策略

    Redis占用内存大小 我们知道Redis是基于内存的key-value数据库,因为系统的内存大小有限,所以我们在使用Redis的时候可以配置Redis能使用的最大的内存大小. 1.通过配置文件配置 ...

  9. 简单地迁移你的android jni代码逻辑到iOS - 编写iOS下jni.h的替代 - ocni.h

    1. jni的代码逻辑中与上层平台语言交互了. 2. 使用非Xcode的ide开发工具,希望使用纯净的c/c++代码,不掺杂其它平台相关的语言语法. 3. 只想简单地替换jni代码对上层平台语言的功能 ...

  10. 推荐算法之用矩阵分解做协调过滤——LFM模型

    隐语义模型(Latent factor model,以下简称LFM),是推荐系统领域上广泛使用的算法.它将矩阵分解应用于推荐算法推到了新的高度,在推荐算法历史上留下了光辉灿烂的一笔.本文将对 LFM ...