git代码托管仓库03(本地仓库和远程仓库之间的联系)

2024-09-05 18:28

本文主要是介绍git代码托管仓库03(本地仓库和远程仓库之间的联系),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

命令如下

clone(克隆):从远程仓库中克隆代码到本地仓库

fetch(抓取):从远程仓库抓取到本地仓库,不进行合并,操作较少

pull(拉取):从远程仓库拉到本地仓库,自动进行合并,然后放到工作区,相当于fetch+merge

push(推送):修改完成,需要和团队成员共享代码时,将代码推送到远程仓库

常见基于git代码托管仓库

 github:面向开源项目和开发者社区。代码托管,版本控制,问题跟踪,项目管理...

 gitee:面向中国用户。功能同上

gitlab :提供全面DevOps平台。

gitee仓库学习 

进入gitee

点击右上角“+”,新建仓库

填写新建仓库信息 

 

仓库生成 

 

设置SSH公钥

打开git命令行工具输入
ssh-keygen -t rsa    //ssh-keygen: 这是一个用于生成、管理和转换认证密钥的工具。-t rsa: 这个选项指定了要生成的密钥类型。RSA 是一种广泛使用的公钥加密算法,适用于 SSH 认证。

生成之后进行查看,输入
cat ~/.ssh/id_rsa.pub     //cat: 这是一个 Unix/Linux 命令,用于连接文件并将其内容输出到标准输出。~/.ssh/id_rsa.pub: 这是 RSA 公钥文件的路径。

  • ~: 表示当前用户的主目录。
  • .ssh: 这是一个隐藏目录,通常用于存储与 SSH 相关的文件。
  • id_rsa.pub: 这是生成的 RSA 公钥文件,通常与私钥 id_rsa 配对


     
  • 私钥: 通常保存在 ~/.ssh/id_rsa,应妥善保管,不应与他人分享。
  • 公钥: 通常保存在 ~/.ssh/id_rsa.pub,可以安全地分享给需要验证你身份的服务器。

 

 

 

将生成的SSH公钥复制粘贴,标题会自动添加

确认之后会要求输入账户密码,输入密码之后希纳是成功添加SSH公钥 

 

 

回到git bash命令行工具,输入以下命令查看是否连接成功

 ssh -T git@gitee.com

yes回车 

 

本地仓库推到远程仓库--绑定关系

在本地仓库中打开git bash 命令行工具,输入以下指令

git remote add origin 地址              //origin是自取的远程仓库名,地址是远程仓库地址

解绑:git remote remove origin

确认是否解绑成功:git remote -v 

该地址是在gitee仓库中复制,先点击SSH,再点击右边复制,鼠标中键粘贴

 

绑定成功

 

 

查看是否添加远程仓库成功.可以发现已经添加成功

git remote 

 

 

将本地代码同步到远程仓库

git push [f] origin master
f:强制覆盖

git push --set-upstream origin master:master
第一次推送的时候,把本地master分支推送到远程master分支,第二次推送的时候省略分支名和远端名直接写git push

 

本地 分支和远程分支的关联关系

git branch -vv   //查看分支详细信息,本地与远程分支关联

 

从远程仓库克隆 (将远程仓库拉到本地来)

git clone <仓库路径> [本地目录]

 

 

桌面右键打开一个新的git bash命令行工具,输入git clone 复制出来的仓库路径  新取的克隆来的文件夹路径名,因为是在桌面打开的命令行工具,所以默认克隆到桌面

 

打开桌面可以看到已经克隆了一份文件
 

 

从远程仓库中抓取和拉取

抓取:git fetch [remote name] [branch name]

  • 若是不指定远端名和分支名,则抓取所有分支
  • 抓取指令就是将仓库里的更新都抓取到本地,不会进行合并

拉取: git pull [remote name] [branch name]

  • 拉取指令就是将远端仓库的修改拉到本地并自动合并,等同fetch+merge
  • 若是不指定远端名和分支名,抓取所有并更新当前分支

修改本地仓库的内容之后add 添加到暂存区,commit 进行提交,然后push --set-upstream origin master将本地仓库推送到远程仓库。

打开克隆仓库的git bash 命令行,fetch抓取远端仓库的更新内容,再然后merge将更新内容合并到本地克隆仓库。但是既要fetch抓取又要merge合并太麻烦,直接pull抓取又合并

总结:

1.添加远程仓库:git remote add origin git@gitee.com/**/**.git


2.将master分支推送到远程仓库,与远程的master绑定关联关系:git push --set-upstream origin master

3.远程仓库克隆到本地:git clone git@gitee.com/**/**.git 取名


4.本地修改推送到远程仓库:

  • 修改文件内容
  • add . 添加到暂存区
  • commit 提交到本地分支
  • push origin master 推送到远程仓库

5.将远程仓库修改更新到本地:

  • fetch + merge
  • pull
     


​​​​​​​

这篇关于git代码托管仓库03(本地仓库和远程仓库之间的联系)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1139727

相关文章

Java调用DeepSeek API的最佳实践及详细代码示例

《Java调用DeepSeekAPI的最佳实践及详细代码示例》:本文主要介绍如何使用Java调用DeepSeekAPI,包括获取API密钥、添加HTTP客户端依赖、创建HTTP请求、处理响应、... 目录1. 获取API密钥2. 添加HTTP客户端依赖3. 创建HTTP请求4. 处理响应5. 错误处理6.

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Python中顺序结构和循环结构示例代码

《Python中顺序结构和循环结构示例代码》:本文主要介绍Python中的条件语句和循环语句,条件语句用于根据条件执行不同的代码块,循环语句用于重复执行一段代码,文章还详细说明了range函数的使... 目录一、条件语句(1)条件语句的定义(2)条件语句的语法(a)单分支 if(b)双分支 if-else(

java父子线程之间实现共享传递数据

《java父子线程之间实现共享传递数据》本文介绍了Java中父子线程间共享传递数据的几种方法,包括ThreadLocal变量、并发集合和内存队列或消息队列,并提醒注意并发安全问题... 目录通过 ThreadLocal 变量共享数据通过并发集合共享数据通过内存队列或消息队列共享数据注意并发安全问题总结在 J

MySQL数据库函数之JSON_EXTRACT示例代码

《MySQL数据库函数之JSON_EXTRACT示例代码》:本文主要介绍MySQL数据库函数之JSON_EXTRACT的相关资料,JSON_EXTRACT()函数用于从JSON文档中提取值,支持对... 目录前言基本语法路径表达式示例示例 1: 提取简单值示例 2: 提取嵌套值示例 3: 提取数组中的值注意

Java文件与Base64之间的转化方式

《Java文件与Base64之间的转化方式》这篇文章介绍了如何使用Java将文件(如图片、视频)转换为Base64编码,以及如何将Base64编码转换回文件,通过提供具体的工具类实现,作者希望帮助读者... 目录Java文件与Base64之间的转化1、文件转Base64工具类2、Base64转文件工具类3、

CSS3中使用flex和grid实现等高元素布局的示例代码

《CSS3中使用flex和grid实现等高元素布局的示例代码》:本文主要介绍了使用CSS3中的Flexbox和Grid布局实现等高元素布局的方法,通过简单的两列实现、每行放置3列以及全部代码的展示,展示了这两种布局方式的实现细节和效果,详细内容请阅读本文,希望能对你有所帮助... 过往的实现方法是使用浮动加

JAVA调用Deepseek的api完成基本对话简单代码示例

《JAVA调用Deepseek的api完成基本对话简单代码示例》:本文主要介绍JAVA调用Deepseek的api完成基本对话的相关资料,文中详细讲解了如何获取DeepSeekAPI密钥、添加H... 获取API密钥首先,从DeepSeek平台获取API密钥,用于身份验证。添加HTTP客户端依赖使用Jav

Java实现状态模式的示例代码

《Java实现状态模式的示例代码》状态模式是一种行为型设计模式,允许对象根据其内部状态改变行为,本文主要介绍了Java实现状态模式的示例代码,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来... 目录一、简介1、定义2、状态模式的结构二、Java实现案例1、电灯开关状态案例2、番茄工作法状态案例