一文吃透VSCode中git的相关配置与使用

发布时间 - 2022-08-30 00:00:00    点击率:

本篇文章带大家聊聊vscode+git操作,介绍一下vscode中git的相关配置与使用,希望对大家有所帮助!

 (本文操作均在 Gitee 上进行,Gitee 与 Github 操作方式基本基本相同。)

一、搭建 GIt 环境(Windows)

1. 先下载安装 GIt, 随后注册 Git 用户名与邮箱,此步骤在下面文章已有讲述,此处不再赘述;

https://blog.csdn.net/weixin_53072519/article/details/122824860详细介绍了GIT的使用方式,包括GIT介绍、安装、相关的命令解释,还有项目上传至云端与克隆至本地。【推荐学习:《vscode入门教程》】

2. 生成 SSH 公钥与密钥;

        右键打开 Git Bash Here;

使用命令 ls .ssh 检查我们的目录下是否已经有公钥和私钥(如下是没有的);

创建公钥和私钥,使用命令 ssh-keygen -t rsa -C "邮箱" 

此时公钥私钥已经生成,注意提示的路径;

3. 将公钥添加到 GitHub/Gitee;

        复制公钥;

进入 Gitee --> "设置" --> “SSH 公钥”,添加新的公钥;

添加成功后如下;

4. 测试 SSH 连接;

        使用命令 ssh -T git@gitee.com 进行测试,出现 hi... 字样,即连接成功;

        同样在使用 GIthub 时使用命令 ssh -T git@github.com 即可;

二、VS Code 中 GIt 相关操作

(在这里我将使用一个空文件夹 git 作为项目文件进行相关的演示操作。)

本地类操作

1. 准备项目文件并初始化仓库

        新建项目文件夹 git 作为项目;桌面进入 Git Bash Here,输入命令 code git 使用 vs code 打开我们的项目文件夹;

vs code 中进入源代码管理,点击存储库的初始化。这步也就完成了 git 仓库的初始化,此时可以看到文件夹已有 .git 文件夹(默认隐藏,需要设置显示隐藏文件即可看到);

随后在项目文件 git 中新建文件 demo.html;

此时我们可以看到新建的文件为绿色,且后面有 U 字提示;U 意为 Untracked 未追踪,也就是说此文件目前仅在我们本地,未被 git 进行跟踪。

2. 添加文件至暂存区

        进入源代码管理,点击所要操作文件后面的 “+”,即可将文件添加至暂存区,相当于执行命令 git add;

此时文件名仍然为绿色,但是后面的 U 变成了 A,A 则意为此文件已在暂存区。

3. 提交暂存区文件至 git 仓库

        将暂存区的文件提交至 git,进入源代码管理,在消息框中输入相关备注,然后点击 “√” 即可进行一次提交,也可使用 Ctrl+Enter 快捷键直接提交;

此时文件颜色变为正常,且无字母提示,说明文件已提交至 git。

        提交也可使用快速提交方式,所谓快速提交就是将新文件或者修改后的文件直接提交,而不用先保存至暂存区。省略了添加至暂存区操作;

如下,如果我们将修改后的文件未保存至暂存区就进行了提交,vs code 会给出警告,这时我们选择“总是”,即可在未来的操作中自动省略添加至暂存区操作。

4. 修改提交后的文件

        将提交后的文件内容进行修改后,文件名称会有如下提示;

此时文件名变为黄色,且有提示字母 M;M 意为 modify,即已修改。

想要撤销修改,进入源代码管理,点击返回箭头放弃更改即可;

5. 查看/新建/切换分支

        点击 vs code 底部状态栏的 “master” 即可显示项目中的分支,此处的 master 意为当前所在分支为 master;如下图所示,项目中只有一个 master 分支;

创建分支点击 “+ 正在创建新分支...”;

此时项目中已有两个分支;

切换分支只需点击对应分支名称即可;

6. 合并分支

        我们先在新建的 xiaoma 分支中修改文件内容并提交;

随后切换到 master 分支,此时 master 分支是没有修改后的内容的;

接下来进行合并,首先点击设置图标 “⚙” 打开命令面板;

在命令面板中搜索 git merge,找到合并分支操作,点击合并分支;

此时 master 分支已有 xiaoma 的相关操作;

7. 临时保存当前分支状态

        当我们在工作过程中代码写到一半,并没有完成某个模块的开发,而这时又不得不离开当前分支切换到另一个分支时,就需要将当前分支的状态进行临时保存(储藏、藏匿),相当于 git 命令 git stash;

当在当前分支做了一定的修改后,点击更多 “···”,找到存储-->储藏;

8. 查看当前文件做了哪些修改

        当我们正在修改已经提交到 git 的文件内容时,vs code 会即使提示我们做了哪些操作,相当于 git 命令 git diff,如下:

蓝色代表此处已经被修改或者删除
绿色代表此处代码为新增内容


远程类操作

1. 新建 GIt 仓库

        远程类操作需要结合 Gitee 进行,所以我们先在 gitee 中新建一个仓库,进入 gitee 首页点击+新建仓库;

创建好的仓库如下,我们已经有了 SSH 地址;

2. 克隆项目(git clone)

        首先复制新建仓库所获得的 SSH 链接,打开 vs code 中的命令面板,输入 git clone 找到克隆选项;

点击后粘贴我们的 SSH 地址,回车,这时候 vs code 会提示我们选择一个地址用于存放克隆的项目,随后开始克隆,如下;

克隆成功后即可在本地打开项目。

3. 推送项目(git push)

        我们先在刚刚克隆的项目中随意创建一些文件并将它们提交;

进入源代码管理,点击更多 “···” 找到 push 进行推送;

推送成功后如下,在 Gitee 中可以看到我们的提交记录;


4. 克隆云端的项目至本地(git pull)

        在 Vs Code 中拉取云端项目,进入源代码管理,选择更多 “···” ,选择 “拉取”,即可进行 pull 操作;

注意:每当进行推送项目(push)时,最好先拉取一下云端代码(pull)以保证云端已经更新到最新状态,防止推送项目后造成代码冲突;

更多关于VSCode的相关知识,请访问:vscode教程!


# git  # vscode  # 公钥  # 源代码  # 已有  # 意为  # 可以看到  # 先在  # 也可  # 当我们  # 切换到  # 在这里 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 悟空浏览器如何设置小说背景色_悟空浏览器背景色设置【方法】  软银砸40亿美元收购DigitalBridge 强化AI资料中心布局  如何在云指建站中生成FTP站点?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  Python自然语言搜索引擎项目教程_倒排索引查询优化案例  Python文件流缓冲机制_IO性能解析【教程】  在线教育网站制作平台,山西立德教育官网?  javascript事件捕获机制【深入分析IE和DOM中的事件模型】  JavaScript Ajax实现异步通信  长沙做网站要多少钱,长沙国安网络怎么样?  Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程  Laravel如何配置中间件Middleware_Laravel自定义中间件拦截请求与权限校验【步骤】  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  JS碰撞运动实现方法详解  Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】  Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  Laravel集合Collection怎么用_Laravel集合常用函数详解  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  BootStrap整体框架之基础布局组件  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  js实现点击每个li节点,都弹出其文本值及修改  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  iOS发送验证码倒计时应用  如何快速搭建FTP站点实现文件共享?  Android Socket接口实现即时通讯实例代码  详解Huffman编码算法之Java实现  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  高性能网站服务器部署指南:稳定运行与安全配置优化方案  Laravel怎么判断请求类型_Laravel Request isMethod用法  Laravel如何与Pusher实现实时通信?(WebSocket示例)  如何在宝塔面板中创建新站点?  如何在服务器上配置二级域名建站?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  做企业网站制作流程,企业网站制作基本流程有哪些?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  php 三元运算符实例详细介绍  如何生成腾讯云建站专用兑换码?  JavaScript模板引擎Template.js使用详解  Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  如何快速登录WAP自助建站平台?  nodejs redis 发布订阅机制封装实现方法及实例代码