首页 > 其他分享 >Git之5-Gitee(远程仓库)

Git之5-Gitee(远程仓库)

时间:2024-09-27 16:49:48浏览次数:9  
标签:git 仓库 dev Gitee Git 推送 远程 分支

我们之前讲的全是在本地电脑上进行的操作,那还不如不用版本控制工具,自己去控制。因此我们团队小组开发,一定要用到远程仓库,这样才能更好地进行版本控制。(不用远程仓库的话,那小组开发只能用同一个U盘,但这样又太荒谬了)。因此我们使用远程仓库gitee。

1、注册与创建远程仓库

  • 常用远程仓库:
    • GitHub(国外的,访问速度很慢、甚至访问不到)
    • Gitee(国内的,访问速度快)
    • Gitlab(公司内,搭建的私服)
  • 注册码云

  • 创建远程仓库

2、配置SSH公钥

为什么要配置SSH公钥?

答:本地电脑,今后要去连接远程仓库。而登录远程仓库时,需要输入账号和密码。因此我们从本地电脑向远程仓库推送/拉取代码时,就必须得先登录,这样就十分不方便。

        因此正规的解决方案是:在本地电脑上,下载一个远程仓库的公钥,有了这把钥匙,以后就不需要账号密码,就能在本地电脑连接远程仓库了。

        说白了就是,这个公钥,以后就当做账号、密码来使用了,方便我们本地电脑连接远程仓库。

  • ①产生公钥:ssh-keygen -t rsa "邮箱地址"(这个邮箱地址之前在本地电脑的git设置过)

  • ②查看公钥:cat ~/.ssh/id_rsa.pub

  • ③复制公钥到gitee个人设置:

3、添加与推送远程仓库

  • 添加远程仓库(添加完远程仓库,本地git就知道要操作哪个远程仓库了)

        git remote add origin git @gitee.com:jingangbo/gitstore.git

  • 查看远程仓库

        git remote

  • 推送代码到远程仓库

        git push origin master : master

        刷新gitee的对应仓库,看看是否有代码文件

  • 建立关联(是为了直接推送代码)
    • git push --set-upstream origin master
    • git branch -w (查看关联)
    • git push (建立好关联以后,直接可以推送) 

        下面就去远程仓库gitee上,去查看:

4、推送远程仓库dev分支

  • 远程仓库创建dev分支

查看刚创建的分支:

可见这个dev分支,拥有那个时刻master分支的全部内容。

  • git push origin dev(推送代码到远程仓库的dev分支)

推送前,我们要观察本地git的dev分支,是否缺少远程仓库的dev分支中的某个文件:

此时我们就不能直接从本地git,直接推送文件到远程仓库的dev分支上,肯定会报错,如下:

因此,此时我们就需要先将远程仓库的dev分支的代码,全部拉取到本地git的dev分支上,再推上去:

此时就不缺少文件了,此时直接将本地git的dev分支的代码,推送到远程仓库的dev分支即可:

以上就是推送代码到远程仓库的dev分支上的全部流程。

5、克隆与拉取远程仓库

  • 克隆(只会克隆远程仓库的master分支)

        git clone 仓库路径 本地目录

        ①本地仓库打开git控制台

        ②获取远程仓库的地址

  • 抓取与合并(不常用,因此就不演示了)

        git fetch origin master

        抓取指令就是将仓库里的更新都抓取到本地,不会进行合并(你只抓取下来远程仓库的代码,而不合并它们,这就显得很鸡肋。因此我们很少用这个fetch命令。因此我们常用下面的pull命令,它就等同于fetch+merge(合并))。

        如果不指定远端名称和分支名,则抓取所有分支。

  • 拉取(常用,而且会将拉取到的分支代码,自动合并到本地git的主分支)

        git pull origin master(将远程仓库的代码,拉取到本地仓库)

        拉取指令就是将远程仓库的修改拉到本地并自动进行合并,等同于fetch + merge

        如果不指定远端名称和分支名,则抓取所有并更新当前分支

举例:在git-test中,向远程仓库的dev分支推送一个新文件post.txt(岗位功能)

查看远程仓库的dev分支,是否更新了该文件:

可见确实更新了该文件,那么接下来就需要在本地的git-test2中,拉取远程仓库的dev分支中的最新代码:

 查看本地的git-test2中,是否更新了post.txt文件:

可见,我们明明拉取的是远程仓库的dev分支,但是此时本地git的主分支也更新了,说明pull命令的特点就是:自动将拉取到的分支代码合并到本地git的主分支master上。

6、解决合并冲突

  • 冲突原因:不同的人,对同一处地方编写了不同的代码。
  • 解决方案:类似于分支冲突的解决方案,人为判断冲突的地方应该如何写代码。

模拟合并冲突:

这样一来,二者都对log.txt文件做了编写,并推送到了远程仓库的dev分支上,此时就一定会产生冲突。

具体操作过程如下:

①在git-test文件夹(小明负责)下,做如下操作:

查看远程仓库的dev分支下的log.txt的内容:

②在git-test2文件夹(小李负责)下,做如下操作:

下面查看一下远程仓库的dev分支中的log.txt文件是否得到更新:

③此时小明(git-test文件夹),应该拉下来远程仓库的dev分支的代码(也得到一下更新):

最终得到的结论:

文件推送时,发生冲突的话,就先将远程仓库的代码拉下来,再人为手动解决冲突即可,再推送上去即可。

即:发生冲突以后,也需要人为手动解决,因为代码是人写的,计算机也不知道留哪一段代码,怎么取舍,因此只能靠人为手动解决冲突。

标签:git,仓库,dev,Gitee,Git,推送,远程,分支
From: https://blog.csdn.net/qq_63981644/article/details/142547487

相关文章

  • pbootcms内置Ueditor百度编辑器远程抓取图片的开启与关闭
    你提到的百度编辑器(Ueditor)在PbootCMS中的远程图片抓取功能确实可能导致一些问题,特别是在使用云存储服务时。以下是你提供的解决方案的详细步骤和注意事项:方案一:禁用后端抓取功能打开文件位置:打开文件:core\extend\ueditor\php\controller.php注释掉相关代码:在contro......
  • plink.exe 是 PuTTY 工具集中的一个命令行工具,用于通过 SSH(安全外壳协议)进行远程连接
    plink.exe是PuTTY工具集中的一个命令行工具,用于通过SSH(安全外壳协议)进行远程连接。它通常用于在没有图形界面的情况下实现SSH连接,适合脚本和自动化任务。在使用plink.exe时,你可以执行以下操作:连接到远程服务器:通过命令行指定用户名和主机地址。执行远程命令:可以直接在......
  • Gitlab分支管理规范和提交代码规范
    gitlab分支管理规范分支说明:测试代码库共有三个分支,main分支、dev分支、release分支--main分支:存放运行稳定的最新代码,一般不直接将未审核的代码合入到main分支--dev分支:存放个人开发的用例脚本,可用于用例故障修复,新的用例开发等--release分支:对应上线的产品版本,在发布......
  • HelpLook VS GitBook,在线文档管理工具对比
    在线文档管理工具在当今时代非常重要。随着数字化时代的到来,人们越来越依赖于电子文档来存储、共享和管理信息。无论是与团队合作还是与客户分享,人们都可以轻松地共享文档链接或通过设置权限来控制访问。在线文档管理工具的出现大大提高了工作效率和协作能力。本篇文章将会聚......
  • 必看!Air780EP 4G模组—AT开发FOTA远程升级之路
    Air780EP是合宙推出的一款低功耗4G全网通模组,兼容模组行业1618经典封装,支持OpenCPU开发及全功能数传AT开发,可广泛应用于多样化的物联网终端。针对用户朋友的应用反馈,本文特别推出基于Air780EP模组AT开发的FOTA远程升级指南——AT版本的远程升级主要是对AT固件版本进行升级,实......
  • Touch力反馈遥操作-远程操作机器人系统
    Touch力反馈遥操作机器人是一种结合了力反馈技术的远程操作机器人系统。一、工作原理1.传感器检测:Touch力反馈遥操作机器人通常配备多种传感器,用于检测机器人所处环境的物理信息,如位置、力、力矩等。这些传感器将检测到的数据传输给控制系统。2.数据传输:通过通信网络,将......
  • git使用
    目录从无到有:如何将一个项目上传到远程仓库一、用户认证1.生成SSH密钥对2.将公钥添加到Gitee3.配置SSH代理二、上传1.在Gitee上创建仓库2.初始化本地项目为Git仓库3.添加文件到Git仓库4.添加远程仓库5.推送代码到远程仓库从有拉取:如何从远程仓库拉取一个项目1.......
  • SciTech-BigDataAIML-Github-
    GeneratinganewGPGkeyGeneratinganewGPGkeyIfyoudon'thaveanexistingGPGkey,youcangenerateanewGPGkeytouseforsigningcommitsandtags.TOCInthisarticleGeneratingaGPGkeyFurtherreadingSupportedGPGkeyalgorithmsGi......
  • 远程软件排名推荐
    市面上的远程控制软件让人眼花缭乱,经过小社长的深度使用后,找到了几个人气度和口碑上还不错的软件......
  • 通过MobaXterm操作远程服务器电脑的方法
      本文介绍在Windows电脑中,下载、配置MobaXterm软件,从而连接、操作远程服务器的方法。  因为是在Windows操作系统的电脑中连接服务器,所以建议使用MobaXterm、PuTTY等可视化的远程计算机管理软件,来实现对服务器的连接与后续相关操作。在本文中,我们就选择基于MobaXterm软件来连......