ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

04-强行合并本地仓库和远程仓库【项目目录下的.git文件是什么意思/如何合并本地仓库和远程仓库】

2021-10-01 14:02:34  阅读:105  来源: 互联网

标签:git 项目 仓库 react 本地 远程


文章目录

问题和答案

  1. react脚手架新建的初始react项目目录下有一个.git文件,是什么意思?
    • 答:这代表这,该项目已经上传到你的本地仓库里了。
  2. 如何合并本地仓库和远程仓库?
    • 答:强行合并(建议看完下面的解决问题的过程,不要随意尝试)

    • 第一步:将本地仓库与远程仓库关联起来(关键)

      git remote add origin   https://github.com/这里就是你的github仓库的地址.git
      
    • 第二步:pull(拉取)远程仓库的内容,更新本地仓库,并且要使用–allow-unrelated-histories忽略本地仓库和远程仓库的无关性,强行合并(关键)

      git pull origin master --allow-unrelated-histories
      

遇到问题的过程

原本想法是,用react脚手架做一个小demo来练习react,并把这个demo传到github上,结果刚建完项目就遇到一个问题:react脚手架新建的初始react项目目录下有一个.git文件,是什么意思?(如下图)

在这里插入图片描述

起初并不知道这个.git文件是什么意思,百度好像搜不到这个问题。因此,打算先不管该问题,先把项目上传到github上再说。由于一直以来,我都是用下面这种方式(参考博文:将本地已有的一个项目上传到新建的git仓库的方法中“克隆+拷贝”的方式)来上传项目到github的:

1、在github上建一个仓库

2、在一个空的本地目录下克隆这个github远程仓库

3、把项目的文件移入这个目录

4、git 一顿操作即可

但是!目前我在这个react项目目录下也这么干,这方法却会报错!为什么呢?原来是因为这个react项目早已经上传到我们的本地仓库了!也即是说,我刚才所遇到的问题**“react脚手架新建的初始react项目目录下有一个.git文件,是什么意思?”**的答案是:该react项目已经上传到本地仓库啦!

于是,在阅读了参考博文:将本地已有的一个项目上传到新建的git仓库的方法之后,才知道:对于一个本来就是本地仓库的项目,应该用强行合并本地仓库和远程仓库的方法,来达到合并本地仓库和远程仓库的目的

解决问题的过程

一、创建项目

首先借助react的脚手架来新建一个项目,我的项目名为tabledemo_infoshow

npx create-react-app tabledemo_infoshow

创建项目这一步时间有点漫长。完成后,此时的目录出现了一个.git文件,就是表示:这个项目已经存放到我的本地仓库里了,但是还没有上传到任何远程仓库当中。接下来,我想把这个项目传到我的github上,也就是把本地仓库和远程仓库合并,百度了一下,csdn找到了一个大佬的博文:参考博文:将本地已有的一个项目上传到新建的git仓库的方法

下面就是参考这篇博文,进行仓库合并的过程

二、强行合并两个仓库

此方法适用于本地项目已经是一个git仓库的情况,这种情况有两种可能:

①手动将本地的项目初始化为一个git仓库;

②像本人这样,用react脚手架创建项目后,项目目录里自动有了一个.git文件

上述两种情况下,项目已经在本地仓库中了,只需强行合并本地仓库和远程仓库即可。由于这两个仓库是完全不同的两个仓库,所以直接pull都会报错,需要在pull的时候假加上–allow-unrelated-histories才可以pull成功。

git pull 命令用于从远程获取代码并合并本地的版本。

具体步骤如下:

如果本地项目已经是一个git仓库了,请直接到第3步开始。

  1. 新建一个文件夹,然后进入该文件夹下git bash,输入下列命令

    该步骤的目的是,把这个文件夹上传到本地仓库

    git init
    
  2. 在这个文件夹内,放入向要放入的项目文件(就是复制粘贴)

  3. 把当前文件夹目录下的已有文件,全部上传到刚刚新建的本地仓库中

    git add .
    
  4. 保存本地仓库,并书写保存信息:

    git commit -m "push current files"
    
  5. 将本地仓库与远程仓库关联起来(关键)

    git remote add origin   https://github.com/这里就是你的github仓库的地址.git
    
  6. pull(拉取)远程仓库的内容,更新本地仓库,并且要使用–allow-unrelated-histories忽略本地仓库和远程仓库的无关性,强行合并(关键)

    git pull origin master --allow-unrelated-histories
    
  7. 如果你的远程仓库是新建的,空的(连README.MD都没有)所以会出现下面的情况,问题不大。

    img

  8. 把本地仓库的内容push到远程仓库:

    git push -u origin master
    

    img

  9. 搞定!万事大吉!

标签:git,项目,仓库,react,本地,远程
来源: https://blog.csdn.net/Lin_hahahaha/article/details/120577324

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有