Visual Studio 使用 GitHub Copilot 扩展

🎀🎀🎀【AI辅助编程系列】🎀🎀🎀

  1. Visual Studio 使用 GitHub Copilot 与 IntelliCode 辅助编码
  2. Visual Studio 安装和管理 GitHub Copilot
  3. Visual Studio 使用 GitHub Copilot 扩展
  4. Visual Studio 使用 GitHub Copilot 聊天
  5. Visual Studio 使用 GitHub Copilot 协助调试

在这里插入图片描述


文章目录

  • 一、前言
  • 二、GitHub Copilot 的工作原理
  • 三、先决条件
  • 四、将 GitHub Copilot 用于代码完成和建议


一、前言

Visual Studio 中的 GitHub Copilot 可以在 Visual Studio 中实现增强的 AI 辅助开发,帮助你在编写代码时更加高效。

在本文中,你将了解 Copilot Completions ,它是由 AI 提供支持的配对程序员,适用于 Visual Studio,可提供上下文感知的代码完成、建议,甚至是整个代码片段。 这个功能强大的工具有助于在 Visual Studio 中进行 AI 辅助开发,可帮助开发人员更高效地编写代码,减少重复任务所用的时间,并最大程度地减少错误。


二、GitHub Copilot 的工作原理

GitHub Copilot 利用经过 GitHub 存储库中公开可用代码的庞大数据集训练的高级机器学习模型进行运作。 键入代码时,AI 会分析上下文并实时提供相关建议。 你也可以通过编写描述代码要执行的操作的自然语言注释来接收建议。

在这里插入图片描述
此外,你还可以使用 GitHub Copilot注释 转换为代码、创建 单元测试、创建 SQL 查询等。

三、先决条件

要开始集成 GitHub Copilot ,需要:

  • Visual Studio 2022 版本 17.8 或更高版本。

  • 面向 个人 的 GitHub Copilot 或面向 企业 的 GitHub Copilot 的 活动订阅

  • 使用具有有效 GitHub Copilot 订阅GitHub 帐户登录到 Visual Studio。

GitHub Copilot 可供经认证的学生和 GitHub 上热门开放源代码项目的维护者免费使用。 如果你不是常用开源项目的学生或维护者,你可以一次性免费试用 GitHub Copilot 30 天。 免费试用期后,需要有付费订阅才能继续使用。

GitHub Copilot 支持多种编程语言和框架,包括但不限于:C#C++Python

获取适用于 Visual Studio 的 GitHub Copilot

  • 如果使用的使用 Visual Studio 版本 17.10 或更高版本,则统一的 GitHub Copilot 扩展作为 Visual Studio 安装程序中的建议组件提供。 默认情况下,除非你选择在安装期间排除它,否则它将随所有工作负载一起安装。
  • 如果使用的是 Visual Studio 版本 17.9 或更高版本,请安装 GitHub Copilot 扩展。

四、将 GitHub Copilot 用于代码完成和建议

在编辑器中键入代码或注释时,GitHub Copilot 提供上下文感知的代码完成和建议。 GitHub Copilot 可为多种语言提供建议,但特别适用于 Python、JavaScript、TypeScript、Ruby、Go、C# 和 C++。 以下示例使用了 C# 语言,但同样适用于其他语言。

  1. 打开 Visual Studio 并创建一个新的 C# 项目。

  2. 在 编辑器中打开 C# 文件 (Program.cs)。

  3. 在代码编辑器中,键入注释或方法签名,以便查看 GitHub Copilot 的内联代码建议。

 // method to add two numbers
int subtractNumbers(
  1. 将鼠标悬停在建议上,可以看到 GitHub Copilot 命令面板。

接受建议

选择 Tab 或按 Tab 以接受建议,或继续键入以拒绝建议。

在这里插入图片描述

显示在 Visual Studio 中接受 GitHub Copilot 代码建议的屏幕截图

修改建议

选择 Alt+/ 或按 Alt+/ 以修改 Copilot` 的建议。 可以通过在内联聊天中添加上下文或通过编辑完成信息来修改和整理 GitHub Copilot 建议。

在这里插入图片描述

如果未显示命令面板,则可能已达到其显示的默认限制。 若要更改此项,请转到 工具 > 选项 > IntelliCode > 高级,并调整 “取消提示文本的最小提交数” 的值。

  1. 添加以下代码以查看 GitHub Copilot 整行完成。
int a = 5;
int b = 10;
int sum

在这里插入图片描述

使用 Visual Studio 2022 版本 17.11 时,内容排除可用于 Visual Studio 中的 GitHub Copilot Completions。 管理员排除的内容将无法提供完成和建议。请参阅配置 GitHub Copilot 的内容排除项以了解详细信息。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

conda学习

参考: Anaconda 官网教程 https://freelearning.anaconda.cloud/get-started-with-anaconda/18202conda配置虚拟环境/conda环境迁移/python环境迁移 https://blog.csdn.net/qq_43369406/article/details/127140839 环境: macOS 15.2Anaconda Navigator 2.4.2 x.1…

Nginx配置示例教程

最近对Nginx做了一些初步研究,Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发。主要根据工作中各类应用服务部署访问的需求,围绕HTTP服务、负载均衡、正反向代理、子路由、静态资源发布访问等,以及结合minio管理的图片文件资…

git使用教程(超详细)-透彻理解git

一.核心基础 核心概念有六个 首先请把与svn有关的一切概念暂时从你的脑海中移除掉,我们要重新认识本文所讲述的所有概念。 1.worktree worktree是一个目录,你在这里对文件进行增加、删除、修改。也就是我们常说的工作区。在git中worktree必须要与一个…

Django结合websocket实现分组的多人聊天

其他地方和上一篇大致相同,上一篇地址点击进入, 改动点1:在setting.py中最后再添加如下配置: # 多人聊天 CHANNEL_LAYERS {"default":{"BACKEND": "channels.layers.InMemoryChannelLayer"} }因此完整的se…

Keil-MDK开发环境编译后axf自动转换bin格式文件

编译选项添加如下,调用fromelf工具自动完成转换: fromelf --bin -o "$LL.bin" "#L"

如何快速搭建若依管理系统?

1、下载若依管理系统前后端分离版代码至本地(当前版本为RuoYi v3.8.8): RuoYi-Vue: 🎉 基于SpringBoot,Spring Security,JWT,Vue & Element 的前后端分离权限管理系统,同时提供…

【JavaEE】网络(1)

🐵本篇文章开始讲解计算机网络相关的知识 一、基础概念 1.1 局域网和广域网 局域网→Local Area Network→简称LAN,局域网是局部组建的一种私有网络,局域网内的主机之间可以进行网络通信,局域网和局域网之间在没有连接的情况不能…

网络应用技术 实验八:防火墙实现访问控制(华为ensp)

目录 一、实验简介 二、实验目的 三、实验需求 四、实验拓扑 五、实验步骤 1、设计全网 IP 地址 2、设计防火墙安全策略 3、在 eNSP 中部署园区网 4、配置用户主机地址 5、配置网络设备 配置交换机SW-1~SW-5 配置路由交换机RS-1~RS-5 配置路由器R-1~R-3 6、配置仿…

day11 性能测试(4)——Jmeter使用(黑马的完结,课程不全)直连数据库+逻辑控制器+定时器

【没有所谓的运气🍬,只有绝对的努力✊】 目录 1、复习 1.1 断言(3种) 1.2 关联(3种) 1.3 录制脚本 2、Jmeter直连数据库 2.1 直连数据库——使用场景 2.2 直连数据库——操作步骤 2.2.1 案例1&…

Modelscope AgentFabric: 开放可定制的AI智能体构建框架

目录 git clone https://github.com/modelscope/modelscope-agent.git cd modelscope-agent && pip install -r requirements.txt && pip install -r apps/agentfabric/requirements.txtexport PYTHONPATH$PYTHONPATH:/home/ubuntu/users/lilingfei/modelscop…

CSS|08 浮动清除浮动

浮动 需求: 能够实现让多个元素排在同一行,并且给这些元素设置宽度与高度! 让多个元素排在同一行:行内元素的特性 给这些元素设置宽高:块级元素的特性 在标准文档流中的元素只有两种:块级元素和行内元素。如果想让一些元素既要有块级元素的特点也要有行内元素的特…

[Pro Git#3] 远程仓库 | ssh key | .gitignore配置

目录 1. 分布式版本控制系统的概念 2. 实际使用中的“中央服务器” 3. 远程仓库的理解 4. 新建远程仓库 5. 克隆远程仓库 6. 设置SSH Key 实验 一、多用户协作与公钥管理 二、克隆后的本地与远程分支对应 三、向远程仓库推送 四、拉取远程仓库更新 五、配置Git忽略…

【uni-app】App与webview双向实时通信

【uni-app】App与webview双向实时通信 在 Uniapp 中,App 与 里面嵌入的 webview 进行双向的实时通信 vue2 , 模拟器 主要分为两部分 webview 向 app 发送信息 app 向 webview 发送信息 以下是实现方式,用一个例子来说明 (文…

微信小程序处理交易投诉管理,支持多小程序

大家好,我是小悟 1、问题背景 玩过微信小程序生态的,或许就有这种感受,如果收到投诉单,不会及时通知到手机端,而是每天早上10:00向小程序的管理员及运营者推送通知。通知内容为截至前一天24时该小程序账号内待处理的交…

AIGC-------AI生成内容如何赋能AR和VR体验?

AI生成内容如何赋能AR和VR体验 引言 增强现实(AR)和虚拟现实(VR)技术近年来蓬勃发展,为用户提供了沉浸式的体验。这些技术已经广泛应用于游戏、教育、医疗、建筑等领域。然而,AR和VR体验的质量与内容的丰富…

zotero安装教程(包括茉莉花插件)

zotero安装教程(包括茉莉花插件) zotero下载(windows)1-安装 Zotero2-安装 Zotero Connector3-安装浏览器插件--jasminum茉莉花功能:插件下载地址:[https://github.com/search?qjasminum&typerepositories](https://github.c…

M|可可西里

title: 可可西里 time: 2024-12-15 周日 rating: 8.5 豆瓣: 8.9 上映时间: “2004” 类型: M剧情犯罪 导演: 陆川 Chuan Lu 主演: 多布杰 Duobujie张垒 Lei Zhang 国家/地区: 中国大陆 片长/分钟: 90分钟 M|可可西里 粗砺的苍凉,沉默的悲壮。…

ArcGIS教程(007):制作中国行政区划图

文章目录 000:数据准备001:利用地理数据制作中国行政区划图000:数据准备 通过网盘分享的文件:ArcGIS教程(007):中国行政区划图教程练习数据.zip 链接: https://pan.baidu.com/s/1nMiRYD-dbv2S0DoeQzR87g?pwd=3535 提取码: 3535001:利用地理数据制作中国行政区划图 ne_…

KeepAlive与RouterView缓存

参考 vue动态组件<Component>与<KeepAlive> KeepAlive官网介绍 缓存之keep-alive的理解和应用 Vue3Vite KeepAlive页面缓存问题 vue多级菜单(路由)导致缓存(keep-alive)失效 vue3 router-view keeperalive对于同一路径但路径…

类与对象以及ES6的继承

认识class定义类 类的声明用的比较多 类与构造函数的异同 类的构造函数 类的实例方法 类的访问器方法 在类里面写拦截方法 类的静态方法 通过类名直接访问 es6类的继承-extends super关键字 子类可以重写父类方法包括父类的静态方法也可以继承父类的静态方法 babel可以将新的代…