本地项目远程地址由gitlab切换至github

Github连接本地仓库问题解决

一.问题背景

由于之前开发都是用的公司的gitlab,太久没用自己个人的github仓库,再重新将git链接至个人github的repository时出现了诸多问题,将解决方案记录如下,给同样遇到问题的朋友提供一些思路。

  • 本次处理问题的前提是之前有在本地与github建立过SSH连接,且项目有git经历
  • 如果首次使用,大家可以参考Git的使用–如何将本地项目上传到Github文章来进行学习本地Git仓库和Github仓库之间的HTTP/SSH传输方式设置等内容

二.操作流程与问题记录

1. 查看并解除本地仓库与之前仓库建立的链接

  • 在本地仓库上传的过程中可能会遇到以下错误:remote origin already exist

这说明远程仓库已经存在,需要修改远程仓库地址的话可以根据下述步骤进行修改(如果不是想更新远程仓库地址,想处理这个BUG的话请参考remote origin already exist解决方法解决问题)

  • 首先进入需要解决问题的项目(仓库)文件夹,在空白处右键点击Git Bash
    如果在文件管理器开启现实隐藏文件夹的情况下仍然没有出现.git文件夹,那么该项目没有git过

    进入Git Bash

  • 可以先键入ssh -T git@github.com命令,查看是否链接成功,出现下图类似语句表示本地已经有SSH链接,不用管but后面的话。

  • 之后键入git remote -v命令,出现已经链接过的远程地址git@gitlab.suncaper.net:2018070828/user_profile.git
    远程仓库地址

  • 发现与之前公司gitlab的该项目仓库地址一样
    gitlab仓库地址

  • 此时我们来删除这个项目的远程仓库地址,键入git remote rm origin命令,之后可再次用这个命令或者git remote -v命令来验证
    删除仓库

2. 建立新的远程仓库链接

  • 在github该项目的远程仓库下,找到ssh地址
    github仓库页
  • 键入命令git remote add origin git@github.com:Cheny1m/user_profile.git,其中git@github.com:Cheny1m/user_profile.git是你对应的ssh方式下的github远程地址,完成后可以再验证一下
    新的链接
  • 建立远程连接时报错 fatal: not a git repository (or any of the parent directories): .git
    使用git init进行初始化

在这里插入图片描述

3.将本地项目上传到个人github仓库中

  • 先commit
    在这里插入图片描述
3.1 从Git Bash中上传项目
  • 在项目位置打开Git Bash,并通过下述命令推送
git push -u origin master

由于新建的远程仓库是空的,所以要加上-u这个参数,等远程仓库里面有了内容之后,下次再从本地库上传内容的时候就不需要了

  • 在push的过程中可能会出现***client_loop: send disconnect: Connection reset by peer***的错误,初步判断是当推送大量数据时(初始推送大型存储库,使用非常大的文件进行更改)可能需要http.postBuffer 在 git 客户端 (而不是服务器)上设置更高的设置。故将 Git 缓冲区大小增加到 repo 的最大单个文件大小:
git config --global http.postBuffer 157286400

问题得到解决

3.2 从IDEA上传项目
  • 打开IDEA,按下图所示push
    push所示图
    出现下图所示,其中master是分支名字,是可以修改的,但是github限制不能上传到github仓库的主分支里面(defult为main),确定之后就可以push了
    Push Commit
    push成功之后,IDEA会出现提示
    在这里插入图片描述
  • 在github仓库中查看并合并项目到主(main)分支
    github仓库
    之后打开pull requests,请求将master分支 merge to main分支,此处步骤如果有不熟悉的朋友请参考github官方使用指南进行操作。
  • 在合并的过程中可能出现如下情况:
    合并失败

三.结语

  • 此时项目的远程仓库从gitlab到github的修改就全部完成了,而且将本地项目上传至了个人github上

  • 此外,如果gitlab和github用的相同邮箱注册,还将同步commit记录
    在这里插入图片描述

  • 之后还将出两篇博客专门讲gitlab和github之间项目的迁移以及如何同时在一台主机上配置github和gitlab两个账号

  • 转载请注明出处;如果文章有任何的问题,欢迎与我取得联系Email:cym.work@foxmail.com.

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值