Git 使用指南 --- 远程仓库

news2024/11/27 14:43:59

序言

 在这篇文章中,我们将理解分布式版本控制系统,学习远程仓库与本地仓库的交互操作,掌握多⼈协作开发模式。


1. 理解分布式版本控制系统

 前两篇中的所有内容都是针对于在本地的文件管理,Git 的强大之处肯定不仅仅只是体现于此。什么是分布式版本管理系统呢?Git 给予每个开发者一份 完整的代码库工作副本(包括所有版本信息),这使得所有开发者即使是没有网络连接也是可以正常工作的!
Git 的分布式管理系统通过其独特的分布式架构、数据完整性保护、分支和合并支持、易于备份和灾难恢复、离线操作支持、灵活的工作流程、可扩展性以及多用户支持等特点,为开发者提供了一个强大而高效的版本控制和管理工具。


2. 远程仓库的关联

 分布式管理系统的特点还包括会设置一个远程仓库(或称为中央仓库、中心仓库)来 方便团队成员之间的协作和代码共享。现在最常用的远程仓库托管平台包括 GitHub,Gitee等,在这篇文章中我们使用 Github 来介绍如何建立远程仓库和本地的连接。

2.1 新建远程仓库

 进入 GitHub 的官网后,点击以下按钮创建一个新的仓库:
在这里插入图片描述

你需要填写基本信息,比如 仓库名,描述,是否开源等,这里有两个选项建议大家勾上,稍后会介绍他们的用处:
在这里插入图片描述

点击创建则成功创建一个线上的仓库了,仓库中包含两个默认的我们勾选的文件 README.md, .gitignore

2.3 关联远程仓库

 在这里你可以直接将远程仓库克隆下来,但是我采取的方式为将远程仓库和本地一个仓库建立关联,首先你需要获取你远程仓库的链接(选用 HTTPS, SSH安全性更高但是还需要配备公钥,在这里不是重点,前者完全够用了):
在这里插入图片描述

获取该链接后,前往你需要关联的文件夹使用指令:

git remote add origin [远程仓库URL]

之后你可以使用指令查看是否成功建立关联:

git remote -v

会显示如下信息:
在这里插入图片描述


3. 拉取远程仓库

 所谓拉取远程仓库,就是 更新本地仓库的信息与远程仓库保持一致,之前我们的远程仓库是包含两个默认文件的,现在我们使用指令拉取到本地:

git pull <远程主机名> <远程分支名>:<本地分支名>
git pull <远程主机名> <远程分支名> // 若远程的分支名和本地一致则可省去后一个

现在我们尝试一下该指令:
在这里插入图片描述

成功的将远程的文件拉取到了本地上!


4. 向远程仓库推送

 现在我们对文件随意写入内容,之后我们需要将更新后的文件再次推送的远程仓库,首先 你需要将你的更改更新到版本库中,之后使用指令:

git push <远程主机名> <本地分支名>:<远程分支名>
git push <远程主机名> <本地分支名> // 若远程的分支名和本地一致则可省去后一个

在这里插入图片描述
成功的将我们的修改推送到在远程库上!


5. 分支的跟踪

 你可以让你本地的一个特定分支跟踪远程的一个特定分支,这样当你 pull, push 操作时就不需要指定两个分支了,就可以简化如下:

git push // 向特定分支推送信息
git pull // 拉取特定分支的信息

 你可以告诉 Git,你想要当前分支跟踪远程仓库的特定分支,指令如下:

git branch --set-upstream-to=<远程仓库的名称>/<远程分支的名称> <本地分支的名称>

如果你当前就在该分支上,可以省略本地分支的名称:

git branch -u origin/remote-branch

如果你想要你创建一个分支时就跟踪一个分支:

git checkout -b <本地分支名称> <远程仓库的名称>/<远程分支名称>

设置跟踪之后,会显示如下信息:
在这里插入图片描述

你可以使用指令来显示当前所有分支的跟踪信息:

git branch -vv

取消分支之间的跟踪关系使用指令:

git checkout <本地分支名称> // 切换到该分支下
git branch --unset-upstream // 取消分支跟踪

6. 特殊文件的作用

现在我们逐一来介绍两个特殊文件的作用。

6.1 README.md

 当我们大家随意点击一个开源项目的时候,往下翻会显示这个项目的功能,如何使用,等等信息,如下:
在这里插入图片描述

这就是使用 README.md 文件的内容,用来介绍你的项目,但是编写使用的是 MarkDown 的语法格式,入门也非常简单。

6.2 .gitignore

 有时,我们并不希望将工作的所有文件都提交到版本库中管理,比如:
在这里插入图片描述

在这里我们就希望管理 readme 文件就可以了,不需要管理 info.txt 文件,但是我们使用 git status 时,他又一直提示我们将该文件添加到暂存区,这怎么办呢?

.gitignore 作用就来啦,它可以让 Git 忽略指定的文件,这样该文件就不会被管理了,我们将该文件的名称添加到 .gitignore 中,现在我们在使用指令 git status
在这里插入图片描述

可以看到我们的目的达成啦!


7. 总结

 这些指令看起来非常的多,但是当我们带入实际场景时,就可以很快熟悉起来,希望大家有所收获!

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

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

相关文章

jupter_notebook简单介绍以及安装使用

目录 jupyter简单介绍&#xff1a; Jupyter&#xff1a; Jupyter的主要特点包括&#xff1a; 1. 交互式编程&#xff1a; 2. 文档和代码的整合&#xff1a; 3. 易于分享和协作&#xff1a; 4. 丰富的扩展性&#xff1a; 5. 社区支持&#xff1a; 6. 支持多种内核&#…

基于SpringBoot房屋租赁管理系统【包含运行步骤】

基于SpringBoot房屋租赁管理系统【包含运行步骤】 一、项目简介二、技术选型三、运行步骤1. 项目启动 四、项目演示前台页面展示管理员后台管理源码获取方式 总结 大家好&#xff0c;这里是程序猿代码之路&#xff0c;在当今社会&#xff0c;随着城市化进程的加快&#xff0c;房…

Git之2.29版本重要特性及用法实例(六十二)

简介&#xff1a; CSDN博客专家、《Android系统多媒体进阶实战》一书作者. 新书发布&#xff1a;《Android系统多媒体进阶实战》&#x1f680; 优质专栏&#xff1a; Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a; 多媒体系统工程师系列…

亿图机床采集数据

这个数控系统的英文名是HUST,在台湾知名度还可以,但大陆这边我做这么多年项目也只接触过屈指可数的几次,可见市场占有率并不大。下面是一些介绍: 台灣億圖 HUST CNC 是一個充滿活力的公司,我們經營的目標是提供能滿足客戶之優良產品,以及優質的服務。我們的期望是使 HUS…

学习笔记--Docker

安装 1.卸载旧版 首先如果系统中已经存在旧的Docker&#xff0c;则先卸载&#xff1a; yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine 2.配置Docker的yum库 首先要安…

七,Spring Boot 当中的 yaml 语法使用

七&#xff0c;Spring Boot 当中的 yaml 语法使用 文章目录 七&#xff0c;Spring Boot 当中的 yaml 语法使用1. yaml 的介绍2. yaml 基本语法3. yaml 数据类型4. 学习测试的准备工作4.1 yaml 字面量4.2 yaml 数组4.3 yaml 对象 5. yaml 使用细节和注意事项6. 总结&#xff1a;…

产业园区智慧招商解决方案

1. 项目背景与挑战 2023年&#xff0c;产业园区在智慧招商领域面临诸多挑战&#xff0c;包括传统推广方式、信息分散、跨部门协作障碍、缺乏主动服务、服务流程改进困难以及数据档案管理不善。 2. 方案思路 解决方案围绕“一套秘籍”和“一套流程”&#xff0c;服务三方角色…

OpenAI即将推出自然语音功能

&#x1f989; AI新闻 &#x1f680; OpenAI即将推出自然语音功能 摘要&#xff1a;测试博客testingcatalog揭示OpenAI正在通过逆向工程ChatGPT应用&#xff0c;计划增加更自然的语音朗读功能。未来可能推出8种新语音&#xff0c;具有独特代号&#xff0c;能表达动物叫声等非…

(苍穹外卖)day05 店铺营业状态设置 功能测试

目录 一.Redis入门 Redis简介 二.Redis数据类型 三.Redis常用命令 字符串操作命令 哈希操作命令 列表操作命令 集合操作命令 有序集合操作命令 通用命令 四.在java中操作Redis Redis的java客户端 ​编辑 五.店铺营业状态设置 代码开发 Redis---是一个数据库&…

浅谈信创浪潮下,职业院校人才培养有哪些新思路

一、信创产业发展背景 1.1 国家战略意义 信创产业&#xff0c;即信息技术应用创新产业&#xff0c;是国家战略发展的关键方向。近年来&#xff0c;在全球化的竞争和合作背景下&#xff0c;中国高度重视信息技术的自主创新能力&#xff0c;通过政策扶持、资金投入和市场引导等…

【数据结构】—— 栈与队列

目录 前言一、栈1.1 堆栈原理1.2 栈的实现 二、队列2.1 队列的概念2.2 队列结构2.2.1 顺序队列2.2.2 链队 2.3 队列的实现 三、堆与栈的区别3.1 内存中的堆与栈3.2 数据结构中的堆与栈 结语 前言 在单片机数据处理的时候&#xff0c;如果在中断里添加太多函数&#xff0c;可能会…

使用mobaxterm连接linux出现连接中断问题

1.问题描述 使用mobaxterm在连接到远程服务器时&#xff0c;如果隔一段时间不进行操作的话&#xff0c;会出现中断连接的现象。 2.解决 为了增强Linux系统的安全性&#xff0c;我们需要在用户输入空闲一段时间后自动断开&#xff0c;这个操作可以由设置TMOUT值来实现。将以下…

netty编程之基于websocket实现聊天功能

写在前面 源码 。 本文看下netty如何通过websocket实现聊天功能。 类似于实现http server,netty实现websocket也很简单&#xff0c;同样使用对应的编码器和解码器就行了&#xff0c;相关的有HttpServerCodec,HttpObjectAggregator,ChunkedWriteHandler。 1&#xff1a;编码 …

已解决:VS2022启动闪退,错误模块名称: clr.dll,版本: 4.8.9261.0,时间戳: 0x667a1925的问题

本问题已得到解决&#xff0c;请看以下小结&#xff1a; 关于《VS2022启动闪退》的解决方案 记录备注报错时间2024年报错版本VS2022报错复现下载某款VPN软件后&#xff0c;打开VS2022闪退&#xff0c;事件查看器输出如下报错描述错误应用程序名称: devenv.exe&#xff0c;版本:…

DAY 2 - 3 : 线性表—顺序存储

线性表—顺序表 问题引入&#xff1a; 线性表 定义 若干数据元素的一个线性序列。 表示 L (D,R) (即线性表L包含数据元素集合D和关系集合R&#xff09; D{ ai | ai∈datatype ,i0,1,2...n-1 ,n≥0} R{ <ai,ai1> | ai,ai1∈D, 0 ≤ i ≤ n - 2} < ai,ai1 >在这里称…

数据结构代码集训day14(适合考研、自学、期末和专升本)

题目均来自b站up&#xff1a;白话拆解数据结构&#xff01; 今日题目如下&#xff1a;&#xff08;1&#xff09;试写一个算法判断给定字符序列是否是回文。 &#xff08;2&#xff09;给定一个算法判断输入的表达式中括号是否匹配。假设只有花、中、尖三种括号。 题1 回文序列…

学习笔记 | 一文搞懂MySQL体系架构!!!(day22)

本文章的内容会在后面文章中慢慢讲解&#xff0c;该文章主要给各位博友zaipin提供学习思路&#xff0c;也希望大家在评论区发言表述&#xff0c;觉得文章有不足指出也可点评&#xff0c;希望大家多多支持&#xff01;&#xff01;&#xff01; 目录 一、MySQL 1.1 数据库概述 …

【项目日记】高并发内存池---实现页缓存

放纵自己的欲望是最大的祸害&#xff1b; 谈论别人的隐私是最大的罪恶&#xff1b; 不知自己过失是最大的病痛。 --- 亚里士多德 --- 高并发内存池---实现页缓存 1 页缓存整体设计思路2 框架搭建3 NewSpan函数4 请求Span联动 1 页缓存整体设计思路 首先我们来看页缓存的设…

windows手工杀毒-寻找可疑进程之进程名称

上篇回顾&#xff1a;windows手工杀毒-寻找可疑进程之进程图标-CSDN博客 上篇中我们简单介绍了什么是电脑病毒&#xff0c;也介绍了一种发现可疑进程的方法即根据进程图标确认是否是病毒&#xff0c;这种方法存在的理论基础是&#xff0c;通过图标可以很容易在电脑上找…

遥控器新手操作指南!!!

一、准备工作 检查电量&#xff1a;确保无人机和遥控器的电池电量充足&#xff0c;以避免在飞行过程中因电量不足而导致意外。 安装与连接&#xff1a;确保无人机的螺旋桨安装正确且牢固&#xff0c;同时检查无人机存储卡是否插入&#xff0c;以及遥控器与无人机之间的连接是…