软件使用教程(二):VS Code的Copilot、Git设置与使用

软件使用教程(二):VS Code的Copilot、Git设置与使用

文章目录


前言

在追求效率的编程世界里,两款强大的工具正在改变我们的开发方式:Git 让我们能从容管理代码的每一次变化,而 GitHub Copilot 则以其AI智能为我们提供编码建议,甚至自动补全整段代码。

但对于许多开发者,尤其是初学者来说,如何正确配置和高效使用它们,仍是一个挑战。本文将聚焦于 Visual Studio Code,手把手带你完成从Git环境配置到Commit、Push的完整工作流,以及从安装登录到实战应用Copilot的全过程。无论你是想告别命令行焦虑,还是希望拥有一个AI编程伙伴,这篇教程都将为你提供清晰的指引,让你的开发效率获得立竿见影的提升。


一、Copilot设置

1. Copilot的作用

VS Code 中的 Copilot 是一个由 GitHub 和 OpenAI 提供的 AI 编程助手,它的核心作用是通过理解你编写的代码上下文和注释,自动为你生成、补全和建议代码片段。它能显著提升编码效率,帮助你快速完成重复性任务、探索新的 API 用法、甚至学习新的编程语言,就像一位时刻在线的结对编程伙伴。

2. Copilot设置步骤

  • 登陆GitHub

第一次打开VS Code会进入如下欢迎界面,单击“设置copilot”会弹出提示,点击 Continue with GitHub:

Copilot设置


或者在 VSCode 扩展商店搜索 “GitHub Copilot”,点击安装;安装后,右下角通常会弹出提示,点击 Continue with GitHub :

登陆GitHub

接下来按指引完成浏览器授权:

授权GitHub


登录后,单击左下角头像,如果出现 GitHub账号,表示已登陆成功:

登陆成功
  • Chat about your code(关于你的代码的聊天)(Ctrl + Alt + I)
Ask


这个功能允许用户向Copilot提出编程问题或寻求代码帮助。

  • Make changes using natural language(使用自然语言进行更改)(Ctrl + Shift + I)
Edit


该功能允许用户选择他们想要编辑的文件,并描述他们想要进行的更改。Copilot 会直接将这些更改应用到用户的文件中。

  • AI-suggested code completions(AI建议的代码补全)
补全


当你在编辑器中键入字符的时候,代码会自动补全(比在Cursor中好用)

  • Use natural language in your files(在文件中使用自然语言)(Ctrl + I)
自然语言


有时,直接在文件中描述你想要编写的代码会更容易。将光标放置在你想要的位置,或者选择一段文本。使用键盘快捷键 Ctrl + I 打开“Inline Chat”(内联聊天)。通过这种方法,你可以直接在文件中向Copilot描述你的需求,Copilot会根据你的描述提供代码建议。

  • Look out for smart actions(注意智能操作):
智能操作


AI增强编码体验:Copilot通过AI驱动的智能操作来增强你的编码体验,这些智能操作遍布整个VS Code界面。
图标提示:使用两颗星图标,如:在“源代码控制视图”(Source Control view)中,点击该图标,Copilot会根据代码更改自动生成提交信息(commit messages)和拉取请求(PR)描述。
发现技巧和窍门:点击“Discover Tips and Tricks”(发现技巧和窍门)按钮,可以获取更多关于如何使用Copilot的技巧和窍门。

二、Git集成设置

VS Code 自带了开箱即用的 Git 集成,你只需要进行一些简单的初始设置就能高效工作。

1. 初始设置

  • 安装 Git
    最重要的一步:VS Code 的集成依赖于你系统上安装的 Git。如果尚未安装,请先前往 Git 官网下载并安装:Git安装教程
    安装时,建议保持默认选项,尤其注意将 “Git from the command line and also from 3rd-party software” 这一项勾选上,这会将 Git 添加到系统环境变量,让 VS Code 能够找到它。
  • 配置用户信息(首次必须)
    打开系统命令行(CMD、PowerShell 或 Terminal)。
    输入以下命令来设置你的用户名和邮箱,这将会用于你每一次的提交记录(Commit):
git config --global user.name "Your Name"git config --global user.email "[email protected]"

这个信息通常与你使用的 Git 托管平台(如 GitHub, GitLab)的账户邮箱一致。

  • 在 VS Code 中验证
    a)打开 VS Code。
    b)打开一个文件夹(项目)。
    c)点击左侧活动栏的 源代码管理图标(或按 Ctrl+Shift+G)。
    d)如果系统已正确安装 Git,VS Code 会自动检测到并初始化。

好的,我们来详细讲解一下 VS Code 强大且便捷的 Git 集成功能。即使你不太熟悉 Git 命令,也能通过图形化界面轻松完成大部分版本控制操作。

2. 核心功能与日常使用

VS Code 的 Git 界面主要分为以下几个部分:

区域功能说明操作指引
变更 (Changes)显示所有已修改但未暂存(Staged)的文件。右键文件可以选择暂存更改(相当于 git add)、放弃更改打开文件进行比较。
暂存的更改 (Staged Changes)显示已暂存、准备提交的文件。右键文件可以取消暂存(相当于 git reset)。
··· (更多操作)提交、推送、拉取等核心操作菜单。点击后可以看到所有常用命令,如提交 (Commit)拉取 (Pull)推送 (Push)分支 (Branch) 等。
消息输入框用于输入提交信息(Commit Message)。写好描述性的提交信息后,按 Ctrl+Enter (Windows/Linux) 或 Cmd+Enter (Mac) 即可提交。点击旁边的√图标也可提交。
状态栏左下角快速显示当前分支和同步状态。点击分支名可以快速进行创建新分支切换分支拉取推送等操作。非常方便!

基本工作流程:

  1. 修改代码。
  2. 在“源代码管理”视图中,看到文件出现在“变更”区域。
  3. 点击文件旁的 +号 或右键选择 “暂存更改”,将文件放入“暂存的更改”。
  4. 在上方的输入框填写提交信息
  5. 点击 或按 Ctrl+Enter提交
  6. 点击 ··· 菜单,选择 “推送”(Push)将本地提交推送到远程仓库。

总结

工欲善其事,必先利其器。通过本文,我们成功地将 VS Code 打造成了集智能协作与版本控制于一身的强大平台。Git集成让你无需离开编辑器,就能流畅地完成代码提交、分支管理和冲突解决,让版本控制从一项繁琐任务变为无缝的内化习惯。而 GitHub Copilot 的引入,则是为你配备了一位不知疲倦的编程助手,它不仅能帮你补全代码、提供灵感,更能让你从重复劳动中解放出来,专注于更具创造性的架构与设计。

Read more

《C++ 递归、搜索与回溯》第1题:汉诺塔问题

《C++ 递归、搜索与回溯》第1题:汉诺塔问题

🔥个人主页:Cx330🌸 ❄️个人专栏:《C语言》《LeetCode刷题集》《数据结构-初阶》《C++知识分享》 《优选算法指南-必刷经典100题》《Linux操作系统》:从入门到入魔 《Git深度解析》:版本管理实战全解 🌟心向往之行必能至 🎥Cx330🌸的简介: 前言: 聚焦算法题实战,系统讲解三大核心板块:“精准定位最优解”——优选算法,“简化逻辑表达,系统性探索与剪枝优化”——递归与回溯,“以局部最优换全局高效”——贪心算法,讲解思路与代码实现,帮助大家快速提升代码能力 目录 前言: 递归,搜索与回溯算法前置知识 1. 汉诺塔 算法原理(递归): 思路: 算法流程: 解法代码(C++): 博主手记(字体还请见谅哈): 结尾: 递归,搜索与回溯算法前置知识 1. 汉诺塔 题目链接: 面试题 08.

By Ne0inhk
【C++藏宝阁】C++入门:命名空间(namespace)详解

【C++藏宝阁】C++入门:命名空间(namespace)详解

🌈个人主页:聆风吟 🔥系列专栏:C++藏宝阁 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 * 📚专栏订阅推荐 * 📋前言:为什么需要命名空间? * 一、命名空间的定义 * 二、命名空间的使用 * 三、命名空间的特性 * 3.1 命名空间的嵌套定义 * 3.2 命名空间的定义可以不连续 * 四、命名空间的本质:独立的作用域 * 4.1 命名空间是C++的一种作用域类型 * 4.2 命名空间作用域的特点 * 4.3 域作用限定符 `::` 的作用 * 4.4 编译器的查找规则 * 五、命名空间的价值 * 5.1 解决命名冲突 * 5.2 模块化组织代码 * 5.3

By Ne0inhk
C/C++ 全局变量跨文件真相:一句话实验与底层原理

C/C++ 全局变量跨文件真相:一句话实验与底层原理

一句话总结:能否跨文件取决于符号的链接属性——外部链接可跨文件,内部链接不可跨文件;static 正是把外部链接改成内部链接的关键字。 目录 1. 三个实验:30 秒看懂全局变量跨文件能力 2. 底层原理:链接属性决定生死 3. 常见误区:#include 到底算不算跨文件? 4. 类静态成员变量:披着“类作用域”外衣的全局变量 1. 三个实验:30 秒看懂全局变量跨文件能力 实验变量定义链接属性extern 能否跨文件访问?结果1️⃣ 普通全局变量int g = 10;外部链接✅ 可以成功链接2️⃣ static 全局变量static int s = 20;内部链接❌ 不行链接报错:undefined reference3️⃣ #include 假装跨文件#include "a.cpp&

By Ne0inhk
软件解耦与扩展:插件式开发方式(基于 C++ 与 C# 的实现)

软件解耦与扩展:插件式开发方式(基于 C++ 与 C# 的实现)

软件解耦与扩展:插件式开发方式 * 🤔 什么是插件式开发? * 🧩 为何选择插件式开发?—— 解耦与扩展的艺术 * 1. 高度解耦 * 2. 极致的扩展性 * 3. 增强可维护性 * 4. 支持动态加载与卸载 * 🏗️ 插件系统的核心架构 * 💻 实践篇:C# 下的插件式开发 * 1. 定义插件契约 * 2. 实现一个具体插件 * 3. 构建宿主程序(插件加载器) * 应用案例:可扩展的日志系统 * ⚙️ 实践篇:C++ 下的插件式开发 * 1. 定义插件契约 * 2. 实现一个具体插件 * 3. 构建宿主程序(插件加载器) * 📊 C# 与 C++ 实现对比 * ⚠️ 挑战与注意事项 * 🎯 总结:何时使用插件式架构? 🚀在软件工程的漫长演进中,我们始终在追求一个核心目标:构建稳定而灵活的系统。一个优秀的软件架构,如同人体的骨骼,既要坚实稳固,又要具备生长与适应的能力。

By Ne0inhk