{"meta":{"title":"使用 GitHub Copilot 的最佳做法","intro":"了解如何充分利用 Copilot。","product":"GitHub Copilot","breadcrumbs":[{"href":"/zh/enterprise-cloud@latest/copilot","title":"GitHub Copilot"},{"href":"/zh/enterprise-cloud@latest/copilot/get-started","title":"开始"},{"href":"/zh/enterprise-cloud@latest/copilot/get-started/best-practices","title":"最佳做法"}],"documentType":"article"},"body":"# 使用 GitHub Copilot 的最佳做法\n\n了解如何充分利用 Copilot。\n\n## 了解 Copilot“优势和弱点”\n\nGitHub Copilot 是一个 AI 编码助手，可帮助你更快地编写代码，且工作量更少，使你能够将精力集中在解决问题和协作上。 在开始使用 Copilot之前，请务必了解何时应且不应使用它。\n\n\\*\\*\nCopilot 最擅长的一些方面包括：\\*\\*\n\n* 编写测试和重复性代码\n* 调试和更正语法\n* 解释和注释代码\n* 生成正则表达式\n\n\\*\\*\nCopilot 并非旨在用于：\\*\\*\n\n* 响应与编码和技术无关的提示\n* 替换你的专业知识和技能。 请记住，一切由你掌控，而 Copilot 是为你所用的强大工具。\n\n## 为作业选择正确的 Copilot 工具\n\n虽然 Copilot 内联建议和 Copilot Chat 有一些相似功能，但这两种工具最适用于不同的使用场景。\n\n**内联建议最适合：**\n\n* 在编写过程中完成代码片段、变量名称和函数\n* 生成重复性代码\n* 根据使用自然语言的内联注释生成代码\n* 生成用于测试驱动开发的测试\n\n**或者说，Copilot Chat 最适用于：**\n\n* 以自然语言回答有关代码的问题\n* 生成大量代码并根据需求进行迭代\n* 使用关键字和技能完成特定任务。\n  Copilot Chat 内置关键字和技能旨在为提示提供重要上下文并快速完成常见任务。 不同 Copilot Chat 平台提供了不同类型的关键字和技能。 请参阅 [在 IDE 中向 GitHub Copilot 提问问题](/zh/enterprise-cloud@latest/copilot/how-tos/chat-with-copilot/chat-in-ide#using-keywords-in-your-prompt) 和 [在GitHub中询问有关GitHub Copilot的问题](/zh/enterprise-cloud@latest/copilot/how-tos/copilot-on-github/chat-with-copilot/chat-in-github)。\n* 以特定身份完成任务。 例如，你可以判断 Copilot Chat 它是一位高级 C++ 开发人员，他们非常关心代码质量、可读性和效率，然后要求其查看代码。\n\n## 创建周到的提示\n\n提示工程，也就是对你的请求进行组织，以便 Copilot 能够轻松理解并作出回应，这对于 Copilot 生成有价值的回复至关重要。 以下是在编写提示时应记住的一些简单使用技巧：\n\n* 拆分复杂的任务。\n* 具体说明要求。\n* 提供有关输入数据、输出和实现等方面的示例。\n* 遵循良好编程实践。\n\n若要了解详细信息，请参阅 [GitHub Copilot 对话助手的提示设计](/zh/enterprise-cloud@latest/copilot/concepts/prompting/prompt-engineering)。\n\n## 检查 Copilot 的工作\n\n虽然 Copilot 非常强大，但它仍然是一个能够犯错误的工具，你应该始终验证它建议的代码。 使用以下技巧来确保建议的准确性和安全性：\n\n* **在实现代码之前，要首先了解建议的代码。** 若要确保完全了解 Copilot“建议”，可以要求 Copilot Chat 解释代码。\n* **仔细查看 Copilot建议。** 不仅要考虑建议代码的功能和安全性，还要考虑代码的可读性和可维护性。\n* **使用自动测试和工具检查 Copilot其工作。** 借助 linting 和 code scanningIP 扫描等工具，可以自动执行额外的安全和准确性检查层。\n\n> \\[!TIP] （可选）可能需要检查 Copilot其工作是否与现有公共代码相似。 如果不想使用类似的代码，可以关闭与公共代码匹配的建议。 请参阅 [以个人订阅者身份管理 GitHub Copilot 策略](/zh/enterprise-cloud@latest/copilot/how-tos/manage-your-account/manage-policies#enabling-or-disabling-suggestions-matching-public-code)、 [管理组织中GitHub Copilot的策略和功能](/zh/enterprise-cloud@latest/copilot/how-tos/administer-copilot/manage-for-organization/manage-policies) 或 [管理企业中 GitHub Copilot 的策略和功能](/zh/enterprise-cloud@latest/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-enterprise-policies)。\n\n## 引导Copilot产生有帮助的输出\n\n可以进行一些调整来引导 Copilot 做出更有价值的响应：\n\n* **为 Copilot 提供有帮助的上下文：**\n  * 如果你在 IDE 中使用 Copilot，请打开相关文件并关闭无关文件。\n  * 在 Copilot Chat 中，如果某个请求不再是有用的上下文，请将该请求从对话中删除。 或者，如果某次对话的上下文对你没有帮助，可以直接开始一个新的对话。\n  * 如果使用 Copilot Chat in GitHub、提供特定的存储库、文件、符号等作为上下文。 请参阅 [在GitHub中询问有关GitHub Copilot的问题](/zh/enterprise-cloud@latest/copilot/how-tos/copilot-on-github/chat-with-copilot/chat-in-github)。\n  * 如果您在 IDE 中使用 Copilot Chat，请使用关键字让 Copilot 专注于某项特定任务或某段上下文。 请参阅 [在 IDE 中向 GitHub Copilot 提问问题](/zh/enterprise-cloud@latest/copilot/how-tos/chat-with-copilot/chat-in-ide#using-keywords-in-your-prompt)。\n* **重写提示以生成不同的响应。** 如果 Copilot 没有提供有帮助的回复，请尝试重新表述你的提示，或者甚至将你的请求拆分成多个较小的提示。\n* **选择最佳可用建议。** 使用内联建议时， Copilot 可能会提供多个建议。 可以使用键盘快捷键来快速查看所有可用的建议。 有关操作系统的默认键盘快捷方式，请参阅 [IDE 中GitHub Copilot 的键盘快捷方式](/zh/enterprise-cloud@latest/copilot/reference/keyboard-shortcuts)。\n* **提供反馈以改进未来的建议。** 可以通过多种方式提供反馈：\n  * 对于内联建议，请接受或拒绝 Copilot 的建议。\n  * 对于 Copilot Chat 中的单条回复，请点击该回复旁边的点赞或点踩图标。\n  * 有关 IDE 中的 Copilot Chat，请参阅 [在 IDE 中向 GitHub Copilot 提问问题](/zh/enterprise-cloud@latest/copilot/how-tos/chat-with-copilot/chat-in-ide#sharing-feedback)，获取适用于您的环境的说明。\n  * 有关 Copilot Chat in GitHub，请在 [反馈讨论](https://github.com/orgs/community/discussions/110314)中留言。\n\n## 及时了解 Copilot 的功能更新\n\n我们会定期向 Copilot 添加新功能，以实现新的能力、在现有功能基础上进行扩展，并提升用户体验。 若要及时了解 Copilot 的最新功能，请参阅 [更新日志](https://github.blog/changelog/label/copilot/)。"}