一文学会VSCode代码同步至GitHub

news2025/4/8 10:53:30

一、上手GitHub

1. 了解GitHub

上手GItHub之前首先要了解一下GItHub的关键词,如下:

(1) 仓库 (Repository) 仓库是用来存放项目代码,每一项目对应一个仓库。

(2) 收藏 (Star) 收藏别人的仓库,方便自己查找。

(3) 复制/克隆项目 (Fork)。
别人仓库的代码可以克隆到自己的账号下的中,可以对仓库进行更改。自己在仓库中对bug进行更改不会影响原作者的仓库,但可以通过向原作者发起请求 (Pull Request)。Fork也可以理解为分叉。

(4) 关注(Watch)
使用Watch功能关注了其他作者的仓库,如果作者的仓库发生更新,会发送通知到自己的账户上(类似于关注了别人就可以关注别人的动态)。

(5) 事物卡片(Issue)
发现别人的仓库代码出现Bug或有疑问时,可以通过Issue来和代码的作者进行咨询和讨论。然后作者可以收到别人的提问,然后可以回复。回复完成可以关闭当前的Issue。

2. 注册GitHub账号

此处忽略

3. 新建仓库

按以下步骤创建
在这里插入图片描述
点击新建仓库按钮跳转新建仓库页面,如下图
在这里插入图片描述
点击Create repository按钮创建仓库会调整至以下页面
在这里插入图片描述
这里我们点击在仓库中新建一个文件以演示github的使用。
在这里插入图片描述
这里我们在详细备注中输入版本1后点击绿色按钮创建文件,创建成功后将自动跳转至文件页,如下图
在这里插入图片描述
点击刚创建的文件可以对文件进行编辑等操作,以上就是新建仓库的基本操作。

二、Git实操

1. 了解Git

什么是Git?
Git(读音为/gɪt/)是一个开源的[分布式]版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
Git分区有哪些?
(1) 工作区(Working Directory) 添加、编辑、修改文件等操作。

(2) 暂存区(Stage) 暂存已修改的文件,最后会统一提交到Git仓库中。

(3) Git仓库(Git Repository) 最终确定的文件保存到Git仓库成为一个新版本。

2. clone仓库

在从GitHub上克隆资源前,建议新建一个合适的文件夹以存放,这里我在桌面新建一个test文件夹。
在这里插入图片描述
有两种克隆GitHub资源的方式,如下图
在这里插入图片描述
我们这里选择使用git克隆文件。在test文件夹里右键打开git Bash面板
在这里插入图片描述
输入指令git clone "资源链接"后回车在这里插入图片描述
得到上图类似响应结果表示克隆成功。文件夹内会新增克隆下来的仓库,如下图
在这里插入图片描述打开文件夹可以看到有隐藏文件夹.git(记得启动隐藏的项目开关)以及先前在仓库内新建的文件lao.md
打开文件可以看到与仓库中文件完全一致的内容,如下图
在这里插入图片描述

3. 使用Git上传本地更新至远程仓库

在使用git上传更新前需要安装并配置git,如何配置git可以参考以下文章
git使用指南
下图描述了GIt的核心原理
在这里插入图片描述
接着我们回归主题,如何使用GIt将本地的更新上传至远程仓库?
修改文件lao.md
在这里插入图片描述
进入文件test(进入有.git隐藏文件的目录才能上传)输入指令git add '文件名'上传修改过的文件至暂存区,再输入git commit -m "备注信息"将暂存区的文件保存到本地仓库,我们可以使用指令git log查看commit记录,如下
在这里插入图片描述
再使用指令git push将本地仓库的文件上传至远程仓库GitHub。
在这里插入图片描述
打开GItHub的demo仓库中的lao.md可以看到内容和本地文件lao.md成功同步。
在这里插入图片描述

4. 使用Git同步远程仓库值本地文件(工作区)

学会了如何上传本地更新至远程仓库,当然也得学会如何拉取远程的更新至本地仓库
两种方式:

  1. git fetch配合git diff '远程仓库名/分支名'
  2. git pull

fetchpull的主要区别是:fetch不会直接更新至本地文件,它只是拉到了本地版本库,使用diff可以查看本地版本库和本地文件的区别,而pull是直接更新至本地文件。
为了减少冲突,往往是先使用fetch拉取至本地版本库,再diff查看是否有冲突,如果没有冲突则再使用pull把远程仓库的内容直接整合到工作区(本地文件)。
下面我们通过实例来测试一下
修改远程仓库的文件lao.md并提交,如下图
在这里插入图片描述
下面我们在Git上使用指令fetchdiff更新本地仓库
在这里插入图片描述
确认无误再使用pull更新至工作区。
在这里插入图片描述
查看本地文件lao.md确认成功同步
在这里插入图片描述

5. GIt其他常用命令

在这里插入图片描述

三、VSCode与Git和GitHub

最后我们再讲讲如何使用VSCode同步更新代码至远程仓库

1. VSCode上传本地更新至远程仓库

使用VSCode打开仓库demo的文件夹,如下图
在这里插入图片描述
修改文件lao.md并保存后,点击左侧源代码管理页,如下图
在这里插入图片描述
暂存更改后,输入备注信息后点击提交如下图
在这里插入图片描述
点击同步更改按钮后会出现提示框选择确定
在这里插入图片描述
查看远程仓库demo的lao.md文件,可以看到成功同步更新
在这里插入图片描述

2. VSCode新建分支并同步远程仓库

下面再介绍一下使用VSCode如何在远程仓库创建分支以及分支合并
在这里插入图片描述
按上图步骤点击创建分支后输入分支名回车确认
在这里插入图片描述
新建分支成功后可以看到左下角会自动切换到新建的分支
在这里插入图片描述
在新分支上,我们再次修改文件lao.md,如下图,左侧会出现新的更改
在这里插入图片描述
补充:点击更改下的文件,默认情况下会出现两个窗口用于对比,更改前后更改后的区别,确认无误后可暂存更改。
暂存更改并添加备注信息后提交,更新的内容会提交至本地仓库的新分支中,如下图,点击发布分支会将本地仓库中的新分支同步到远程仓库。
回到GitHub上可以看到新分支已经同步了,如下图
在这里插入图片描述

3. 合并分支并同步至远程仓库

以上是新建分支并提交分支的步骤,下面再讲讲如何合并分支至主分支。
点击VSCode左下角切换分支至主分支,按步骤点击合并分支,如下图
选择所要合并的temp分支。
可以看到在temp分支中更改的内容已经同步到主分支的本地仓库中,再点击同步更改按钮后则会同步更改至远程仓库,并自动拉取至本地工作台。
在这里插入图片描述
回到GItHub上,可以看到成功合并分支内容至主分支上了
在这里插入图片描述
以上就是VSCode代码同步至GitHub的基础内容,学会新的有关上述的内容会在本文章持续更新!
本文参考文章:

  1. 【git及GitHub使用总结】(一)
  2. git使用指南|John知识分享
    本文参考视频:
  3. Git工作流和核心原理 | GitHub基本操作 | VS Code里使用Git和关联GitHub

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

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

相关文章

忆暖行动|“以前的住宿也没有这么好的环境,住的都是土房子,一下雨就哗哗掉墙皮”

常忆旧时苦 方思今日甜 新年将至,彩灯与烟火闪烁。值此佳节,我们去看望了一位65岁的退休教师,并与她进行了交谈,从奶奶的讲述中,我们了解到过去生活的不易,珍惜当下的美好生活。 迎接新年 为迎接新年&am…

base64、File、Blob、ArrayBuffer几种文件格式介绍以及互转

文章目录 关系介绍BlobFileFileReader二进制数组ArrayBuffer对象URL.createObjectURLbase64 转化file转base64blob转base64base64转blobbaes64转fileblob转fileblob转ArrayBufferfile转ArrayBuffer 关系 介绍 Blob 介绍 是一个不可变、原始数据的类文件对象本质上是js的对象 s…

后悔了怎么办 - undo日志

一、undo日志 概念: 把回滚时所需的东西都给记下来 二、事务id 给事务分配id的时机 (1)对于只读事务来说,只有在它第一次对某个用户创建的临时表执行增、删、改操作时才会为这个事务分配一 个 事务id ,否则的话是不…

4.3 转换与处理时间数据

4.3 转换与处理时间数据 4.3.1 转换字符串时间为标准时间1、Timestamp2、DatetimeIndex或者PeriodIndexDatetimeIndex与PeriodIndex函数及其参数说明 4.3.2 提取时间序列数据信息Timestamp类常用属性及说明 4.3.3 加减时间数据Timedelta类周期名称、对应单位及其说明 4.3.4 任务…

Java知识总结

https://www.bilibili.com/video/BV1ys4y1S7Lc 1、Java中线程的实现方式 为什么说本质上只有一种实现线程的方式?实现 Runnable 接口究竟比继承 Thread 类实现线程好在哪里? 实现 Runnable 接口 public class RunnableThread implements Runnable { O…

ai智能改写文案-ai同义转换

文案创作是现代广告营销中不可或缺的一环,一个好的文案不仅可以提升产品的购买率,还可以实现品牌等方面的推广。但是,文案的创作需要耗费大量的时间和精力,如果能够利用智能化技术进行改写,不仅可以大大缩短文案创作时…

JAVA内存不足导致频繁回收和swap引起的性能问题 故障重现(内存篇2)

背景起因: 记起以前的另一次也是关于内存的调优分享下 有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡。 我按经验开始调优,在每个关键步骤…

本地安装directus

简介 Directus 是用于管理 SQL 数据库内容的实时 API 和 App 控制面板。 API会根据数据库模式/内容的实时更改动态更新(无需重新启动服务器)。 Directus安装在任何新的或现有的 SQL 数据库之上,提供 API 层(REST、GraphQL、JS-SD…

获取商品SKU信息API调用代码展示、请求参数和返回值说明

SKU是什么意思 最小存货单位(SKU),全称为stock keeping unit,即库存进出计量的基本单元,可以是以件、盒、托盘等为单位。SKU这是对于大型连锁超市DC(配送中心)物流管理的一个必要的方法。现在已…

MySQL数据库从入门到精通学习第2天(创建数据库)

创建数据库 通过CREATE DATABASE语句来创建数据库通过CREATE SCHEMA语句来创建数据库通过IF NOT EXISTS进行判断创建 通过CREATE DATABASE语句来创建数据库 创建数据库的语法格式如下: CREATE DATABASE 【数据库名】; 创建数据库的库名跟标识符一样也是有要求的&…

实际项目集成分布式一致性协议 Raft

实际项目集成分布式一致性协议 Raft 文章目录 实际项目集成分布式一致性协议 Raft前言1.raft 是什么?2.SOFAJRaft2.1 功能特性 3.Nacos 分布式一致性设计3.1 nacos 分布式协议架构设计3.1 nacos 用 jraft 做什么3.2 Distro 协议 4.实际项目-Spring 工程4.1 旧版项目…

SA168 3BSE003389R1

SA168 3BSE003389R1 远程终端控制系统(RTU)可连接到其他设备。RTU可将设备上的电气信号转换为数字的值,例如一个开关或阀开/关的状态,或是仪器量测到的压力、流量、电压或电流。也可以借由信号转换及传送信号来控制设备&#xff0…

硬盘分区怎么分?新手该如何操作?

相信很多电脑用户都遇到过硬盘分区的情况。刚拿到手的新电脑,基本上都是一个或两个磁盘分区,这不满足我们的使用习惯,比如我们在不同的分区存放不同的东西,只有一个分区就很难做到,所以这时候需要进行磁盘分区。那么硬…

解读“SAP集成架构咨询方法论”

如果你是SAP ERP相关工作的,建议大家点开原文地址去看,会学习到其他很多与这个行业更多的资料。 原文地址:解读“SAP集成架构咨询方法论” | SAP Blogs 原文地址:解读“SAP集成架构咨询方法论” | SAP Blogs ——————————…

经验分享:如何有效应对Facebook广告数据波动问题?

Facebook广告作为一种重要的数字营销工具,可以帮助企业和品牌快速获得目标受众的关注和转化。然而,由于广告投放过程的不稳定性,Facebook广告数据波动问题也经常出现。 对于广告主而言,如何应对Facebook广告数据波动问题&#xf…

【JVM】JMM

一、JMM JVM 内存模型是用来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让 Java 程序在各个平台下都能达到一致的内存访问效果。JVM 内存模型规定了所有的共享变量都是存储在主内存,每个线程还有自己的工作内存,线程的工作内存保存了该线…

【教学类-34-01】拼图(运动项目)3*4格子(中班主题《个别化拼图》健康偏艺术-美术)

背景需求: 一个月的Python纸类学具研究中,我发现个别男孩喜欢把作业中的数字、图案、单元格剪成小块(小卡片)进几周,剪条、剪块的孩子人数也慢慢递增。 幼儿需求:锻炼手指精细动作的需求、或者获得更多物…

Idea+maven+spring-cloud项目搭建系列--13 整合MyBatis-Plus多数据源dynamic-datasource

前言:对于同一个系统,不同的租户需要自己独立分隔的数据库(每个数据库的表结构可以是相同的),同时也要支持跨数据源的查询;并且支持分布式事务,如果这里不使用分库分表插件,需要怎样…

python-day4(字符串、列表、生成式和生成器、使用元组、集合、字典)

字符串和常用数据结构 简单用法 所谓字符串&#xff0c;就是由零个或多个字符组成的有限序列&#xff0c;一半记为sa1a2a3…an(0<n<∞)。在python中&#xff0c;如果我们把单个或多个字符用单引号或者双引号包围起来&#xff0c;就可以表示一个字符串。 s1 hello, wo…

【生物信息】用隐马尔可夫模型对生物序列进行建模

文章目录 Modeling biological sequences with HMMSParsing longer sequences. 举例子Our frst HMM: Detecting GC-rich regionsRunning the model: Probability of a sequence 维特比算法 Viterbi一个摸球例子回到课堂 求解参数 来自Manolis Kellis教授的课 教了隐马尔可夫在基…