Git学习笔记(四)远程仓库

news2024/11/15 12:14:30

根据前面几篇文章的介绍,在本地使用Git基本不成问题了,常用的基本命令和一些基本概念基本也介绍完毕了。这一张主要讲讲远程仓库的创建和使用。

概念

 其实在前面第一篇文章中,我们就简单介绍过远程仓库,它其实就是一个托管在远程服务器上,并在多个团队成员之间共享的存储库,功能上和我们本地仓库没什么太大的区别。

它的主要功能就是在多人协作开发的时候,给我们提供一个云端共享的仓库,大家可以把自己修改的内容提交到云端进行同步,能够很好的控制开发进度,整合开发的模块等等。

创建远程仓库

前面我们已经知道了Git中存在两种类型的仓库,即本地仓库远程仓库。那么我们如何搭建Git远程仓库呢?

我们可以借助互联网上提供的一些代码托管服务来实现,其中比较常用的有GitHub、码云、GitLab等。

gitHub( 地址:https://github.com/ )是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名gitHub

码云(地址: https://gitee.com/)是国内的一个代码托管平台,由于服务器在国内,所以相比于 GitHub,码云速度会更快

GitLab (地址:https://about.gitlab.com/)是一个用于仓库管理系统的开源项目,使用Git作 为代码管理工具,并在此基础上搭建起来的web服务,一般用于在企业、学校等内部网络搭建git私服。

这里我们就用码云举例:

  1. 注册码云(这个我就不演示了,相信大家都能够完成的,这里附上注册地址:https://gitee.com/signup )
  2. 创建远程仓库,如下图所示:


  3. 配置公钥:在创建好远程仓库之后,为了防止别人也能连接到我们的远程仓库,我们需要配置SSH公钥,通过公钥来验证连接者的身份。
    1. 在本地生成一个公钥

      这里我选择将公钥保存在本地库的目录下。

    2. 打开git账户配置,将生成的公钥贴进去。

      输入密码确认,注意这个是你注册码云账号时设置的密码,不是公钥!!!
    3. 验证是否添加成功,在本地输入命令ssh -T git@gitee.com
  4. 连接远程仓库:在所有的配置都准备就绪之后,我们需要将本地仓库与远程仓库进行连接绑定,这样才能够让本地仓库和远程仓库之间进行提交和拉取操作。
    命令: git remote add <远端名称> <仓库路径>
    这里的远端名称自己取,一般叫origin,仓库路径就是在前面让你们创建仓库时候记住的那个地址。(注意一定要选SSH)

经过这些步骤,我们一个远程仓库就相当于创建并连接好了,下面我们来介绍以下远程仓库中一些常用的基本操作。

远程仓库的常用操作

其实在开发过程中,远程仓库相关的操作常用的就五个:clone/push/pull/fetch/merge

  • 命令:git push [-f] [--set-upstream] [远端名称 [本地分支名][:远端分支名] ]
    • 如果远程分支名和本地分支名称相同,则可以只写本地分支
      • git push origin master
    • -f 表示强制覆盖
    • --set-upstream 推送到远端的同时并且建立起和远端分支的关联关系。
      • git push --set-upstream origin master
    • 如果当前分支已经和远端分支关联,则可以省略分支名和远端名。
      • git push 将master分支推送到已关联的远端分支。
      • 查看关联关系我们可以使用 git branch -vv 命令



下次推送本地master到origin的master,直接git push就可以了

  • 命令: git clone <仓库l路径> [本地目录]
    • 本地目录可以省略,会自动生成一个目录
  • 抓取 命令:git fetch [remote name] [branch name]
    • 抓取指令就是将仓库里的更新都抓取到本地,不会进行合并
    • 如果不指定远端名称和分支名,则抓取所有分支。
  • 拉取 命令:git pull [remote name] [branch name]
    • 拉取指令就是将远端仓库的修改拉到本地并自动进行合并,等同于fetch+merge
    • 如果不指定远端名称和分支名,则抓取所有并更新当前分支。

在一段时间,A、B用户修改了同一个文件,且修改了同一行位置的代码,此时会发生合并冲突。 A用户在本地修改代码后优先推送到远程仓库,此时B用户在本地修订代码,提交到本地仓库后,也需要 推送到远程仓库,此时B用户晚于A用户,故需要先拉取远程仓库的提交,经过合并后才能推送到远端分支,如下图所示。

在B用户拉取代码时,因为A、B用户同一段时间修改了同一个文件的相同位置代码,故会发生合并冲突。 远程分支也是分支,所以合并时冲突的解决方式也和解决本地分支冲突相同相同。

以上就是Git远程仓库相关内容,后续会更新如何在IDEA中是Git。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1622223.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

用于肺结节分类的常规 EHR 的纵向多模态Transformer集成成像和潜在临床特征

Longitudinal Multimodal Transformer Integrating Imaging and Latent Clinical Signatures from Routine EHRs for Pulmonary Nodule Classification 摘要 该研究提出了一种基于Transformer 的多模态策略&#xff0c;用于将重复成像与常规电子健康记录&#xff08;EHRs&…

【QT学习】9.绘图,三种贴图,贴图的转换,不规则贴图(透明泡泡),简单绘图工具制作

一。绘图的解释 Qt 中提供了强大的 2D 绘图系统&#xff0c;可以使用相同的 API 在屏幕和绘图设备上进行绘制&#xff0c;它主要基于QPainter、QPaintDevice 和 QPaintEngine 这三个类。 QPainter 用于执行绘图操作&#xff0c;其提供的 API 在 GUI 或 QImage、QOpenGLPaintDev…

亚马逊云科技提高企业生产力神器Amazon Q评测分析

一年一度的全球云计算春晚&#xff0c;亚马逊云科技Re:invent在2023年11月27于Vegas震撼来袭&#xff0c;其中最令人关注的就是CEO Adam在Keynote中分享的内容。其中一个新内容就是提升生产力神器: Amazon Q&#xff0c;可以说它重新定义了企业的工作模式。那具体它神在哪里呢&…

Flutter 有什么优异特性和革命性创新之处?

Flutter 有什么优异特性和革命性创新之处? 什么是 Flutter&#xff1f; Flutter mobile app SDK是一种新的方式来构建漂亮的原生移动应用程序&#xff0c;摆脱过去常见的“千篇一律”的应用程序。用过Flutter的人都对它赞赏有加&#xff1b; 相比较其他新型系统&#xff0c…

ETL工具-nifi干货系列 第十七讲 nifi Input PortOut Port 实战教程

1、端口&#xff08;Port&#xff09;&#xff0c;包含输入端口&#xff08;Input Port&#xff09;和输出端口&#xff08;Out Port &#xff09; 使用一个或多个处理组构建的数据流需要一种方式将处理组连接到其他数据流组件。 处理组和处理组之间可以通过使用端口来进行连…

<网络> HTTP

目录 前言&#xff1a; 一、再谈协议 &#xff08;一&#xff09;认识URL &#xff08;二&#xff09;Encode 和 Decode 二、HTTP 协议 &#xff08;一&#xff09;协议格式 &#xff08;二&#xff09;见一见请求 &#xff08;三&#xff09;见一见响应 三、模拟实现响…

github Copilot的使用总结

1. 代码建议和补全 GitHub Copilot 的基本使用涉及编写代码时的实时代码建议和补全。一旦你已经安装并配置好 GitHub Copilot 插件&#xff0c;你可以在支持的编辑器&#xff08;如 Visual Studio Code&#xff09;中开始使用 Copilot。以下是一些基本的使用步骤&#xff1a; …

hadoop文件操作代码实现

hadoop文件操作 目录 一、文件的上传 删除 查看 1.整体代码 2.代码运行 3.查看证实 4.具体代码解析 1&#xff09;向Hadoop传文件 2&#xff09;向本地Windows传文件 3&#xff09;删除Hadoop的文件 4&#xff09;判断文件是否存在 二、列出文件 1.整体代码 2.代码…

代码随想录算法训练营Day8 | ● 344.反转字符串● 541. 反转字符串II● 54.替换数字● 151.翻转字符串里的单词● 55.右旋转字符串

&#xff08;记得重学&#xff09; ● 344.反转字符串 题目&#xff1a;编写一个函数&#xff0c;其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额外的空间&#xff0c;你必须原地修改输入数组、使用 O(1) 的额外空间解决这一…

Unity 异常 bug

OverlapBoxNonAlloc 使用bug 环境&#xff1a; Unity2021.3.15 在测试场景中使用 OverlapBoxNonAlloc 测试检测没有问题 但是到了真实应用场景&#xff0c;使用 OverlapBoxNonAlloc 检测移动中的小怪 小怪碰撞体为&#xff1a;带有 Rigidbody 的Circle Collider 2D 就会出现异…

RustGUI学习(iced)之小部件(二):如何使用滑动条部件

前言 本专栏是学习Rust的GUI库iced的合集&#xff0c;将介绍iced涉及的各个小部件分别介绍&#xff0c;最后会汇总为一个总的程序。 iced是RustGUI中比较强大的一个&#xff0c;目前处于发展中&#xff08;即版本可能会改变&#xff09;&#xff0c;本专栏基于版本0.12.1. 概述…

力扣HOT100 - 994. 腐烂的橘子

解题思路&#xff1a; 因为要记录轮数&#xff08;分钟数&#xff09;&#xff0c;所以不能一口气遍历到底&#xff0c;所以不能用深搜&#xff08;bfs&#xff09;&#xff0c;而要用广搜&#xff08;bfs&#xff0c;层序遍历&#xff09;。 先记录下新鲜橘子数&#xff0c;…

MyBatis Dynamic SQL基本使用

MyBatis Dynamic SQL基本使用 一、概念二、特性Hamcrest是什么 三、MyBatis Dynamic SQL 快速入门3.1 环境准备3.2 定义表和列3.3 创建 MyBatis3 映射器3.4 使用 MyBatis3 执行 SQL 四、数据库对象表示4.1 表或视图表示4.2 表别名4.3 列表示 五、Where 子句支持5.1 简单的 wher…

什么样的文件传输调度产品 可以简化IT工作流程?

文件传输调度是企业数据管理中的一个重要环节&#xff0c;企业在存在多个分支机构、子公司&#xff0c;或者多个数据中心、服务器节点的时候&#xff0c;都会需要进行文件传输调度&#xff0c;在使用传统的FTP、rsync等传输方式在应对这些复杂的文件交换需求时&#xff0c;会存…

C语言趣味代码(三)

这一篇主要围绕写一个程序---寻找数字 来写&#xff0c;在这篇我会详细和大家介绍基本实现以及它的改良版&#xff0c;还有相关知识的拓展&#xff0c;干货绝对满满。 1. 寻找数字 在这一主题下&#xff0c;我们会编写一些代码&#xff0c;来锻炼玩家的反应力&#xff0c;同时…

让外贸客户心甘情愿下单的话术分享

学会这些话术&#xff0c;轻松拿捏客户&#xff0c;让客户心甘情愿下单 一、客户喜欢讨价还价的模板旨在帮助外贸人员在与客户讨价还价时&#xff0c;既能坚持自己的立场&#xff0c;又能体现出专业和诚信的态度。 二、客户犹豫要不要下单的贸易话术旨在帮助客户消除疑虑&#…

Spring Boot 源码--SpringApplication#run 方法源码解析

前言&#xff1a; 开发过 Spring Boot 项目的都知道只需要一个简单的入口类&#xff0c;然后入口类中有个 main 方法&#xff0c;main 方法中调用了 SpringApplication.run 方法&#xff0c;再配合 SpringBootApplication 注解就可以完成一个项目的启动&#xff0c;如下&#…

云打印怎么上传文件?云打印怎么把文件发送给商家?

随着云打印的火热&#xff0c;现在很多同学们都选择云打印服务来打印自己的资料文档。但是云打印服务毕竟要隔着网络打印&#xff0c;那么我们应该怎么上传文件呢&#xff1f;云打印怎么把文件发送给商家呢&#xff1f;今天小易就带大家一起来了解一下。 云打印怎么上传文件&am…

python爬虫之xpath4

1 最终项目实现的代码 仙剑 #!/usr/bin/env python ​ import logging import requests import re from urllib.parse import urljoin import pymongo import multiprocessing ​ mongo_client pymongo.MongoClient("mongodb://192.168.135.131:27017/") db mong…

【禅道客户案例】专访鸿泉物联研发副总监徐小倩,感受上市公司研发项目管理“知与行”

杭州鸿泉物联网技术股份有限公司&#xff08;以下简称“鸿泉物联”、“公司”&#xff09;成立于2009年6月11日&#xff0c;2019年11月6日登陆上海证券交易所科创板&#xff08;股票代码&#xff1a;688288&#xff09;&#xff0c;注册资本10034.392万元&#xff0c;目前员工6…