【Git/SVN】 Git常见报错及处理方法(持续更新...)

Git常见报错及处理方法

① 如果输入$ git remote add origin git@github.com:djqiang(github帐号名)/gitdemo(项目名).git
提示出错信息:fatal: remote origin already exists.
解决办法如下:
1、先输入$ git remote rm origin
2、再输入$ git remote add origin git@github.com:djqiang/gitdemo.git 就不会报错了!
3、如果输入$ git remote rm origin 还是报错的话,error: Could not remove config section ‘remote.origin’. 我们需要修改gitconfig文件的内容
4、找到你的github的安装路径,我的是C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\etc
5、找到一个名为gitconfig的文件,打开它把里面的[remote “origin”]那一行删掉就好了!

② 如果输入$ ssh -T git@github.com
出现错误提示:Permission denied (publickey).因为新生成的key不能加入ssh就会导致连接不上github。
解决办法如下:
1、先输入$ ssh-agent,再输入$ ssh-add ~/.ssh/id_key,这样就可以了。
2、如果还是不行的话,输入ssh-add ~/.ssh/id_key 命令后出现报错Could not open a connection to your authentication agent.解决方法是key用Git Gui的ssh工具生成,这样生成的时候key就直接保存在ssh中了,不需要再ssh-add命令加入了,其它的user,token等配置都用命令行来做。
3、最好检查一下在你复制id_rsa.pub文件的内容时有没有产生多余的空格或空行,有些编辑器会帮你添加这些的。

③ 场景:如果输入$ git push origin master
提示出错信息:

error: failed to push some refs to 'git@github.com:Umbrella001/-.git'

错误分析:
本地没有update到最新版本的项目(git上有README.md文件没下载下来)
本地直接push所以会出错。

解决办法如下(两种):
第一种:

$ git pull --rebase origin master
......显示一串拉代码的英文,此时已经把github上最新的文件

然后在输入git push origin master,即可成功把本地的文件都上传到github上面去了

$ git push origin master

细节可以参考这篇 博客

第二种:
1、先输入$ git pull origin master //先把远程服务器github上面的文件拉下来
2、再输入$ git push origin master
3、如果出现报错 fatal: Couldn’t find remote ref master或者fatal: ‘origin’ does not appear to be a git repository以及fatal: Could not read from remote repository.
4、则需要重新输入$ git remote add origingit@github.com:djqiang/gitdemo.git
使用git在本地创建一个项目的过程
$ makdir ~/hello-world //创建一个项目hello-world
$ cd ~/hello-world //打开这个项目
$ git init //初始化
$ touch README
$ git add README //更新README文件
$ git commit -m ‘first commit’ //提交更新,并注释信息“first commit”
$ git remote add origin git@github.com:defnngj/hello-world.git //连接远程github项目
$ git push -u origin master //将本地项目更新到github项目上去

④ 场景:当我新建了一个项目时,使用git clone之后,此时git remote -v查看远程仓库为

$ git remote -v
origin git@github.com:Umbrella001/boot_git.git (fetch)
origin git@github.com:Umbrella001/boot_git.git (push)

然后我就想给这个仓库起个新名字叫 candy_git,此时我在git Bash提交代码时 git add .之前需要将 git remote -v的远程代码改成当前远程仓库的ssh地址;

解决方法(3种):

1. 修改命令 
git remte origin set-url URL 

2.先删后加 
git remote rm origin 
git remote add origin git@github.com:Umbrella001/candy_git.git 

3. 直接修改config文件

此时 git remote -v就知道该过来了

$ git remote -v
origin git@github.com:Umbrella001/candy_git.git (fetch)
origin git@github.com:Umbrella001/candy_git.git (push)

【希望可以帮到你,如有错误欢迎指正…】

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值