Update issues with Copilot via Copilot Creates Issues [Public Preview] (#58311)
Co-authored-by: Robert Sese <734194+rsese@users.noreply.github.com>
This commit is contained in:
@@ -7,7 +7,7 @@ versions:
|
|||||||
topics:
|
topics:
|
||||||
- Copilot
|
- Copilot
|
||||||
children:
|
children:
|
||||||
- /use-copilot-to-create-issues
|
- /use-copilot-to-create-or-update-issues
|
||||||
- /create-a-pr-summary
|
- /create-a-pr-summary
|
||||||
- /use-copilot-in-the-cli
|
- /use-copilot-in-the-cli
|
||||||
redirect_from:
|
redirect_from:
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
---
|
---
|
||||||
title: Using GitHub Copilot to create issues
|
title: Using GitHub Copilot to create or update issues
|
||||||
shortTitle: Use Copilot to create issues
|
shortTitle: Use Copilot to create or update issues
|
||||||
intro: 'Use {% data variables.product.prodname_copilot_short %} to quickly generate structured, high-quality issues from natural language or images, without filling out every field manually.'
|
intro: Use {% data variables.product.prodname_copilot_short %} to quickly generate structured, high-quality issues from natural language or images, without filling out every field manually.
|
||||||
permissions: 'Anyone with a {% data variables.product.prodname_copilot_short %} license can use {% data variables.product.prodname_copilot_short %} to create issues. <br> <a href="https://github.com/copilot?ref_product=copilot&ref_type=engagement&ref_style=button&ref_plan=free" target="_blank" class="btn btn-primary mt-3 mr-3 no-underline"><span>Try {% data variables.product.prodname_copilot_short %} for free</span> {% octicon "link-external" height:16 %}</a>'
|
permissions: Anyone with a {% data variables.product.prodname_copilot_short %} license can use {% data variables.product.prodname_copilot_short %} to create issues or update existing issues. <br> <a href="https://github.com/copilot?ref_product=copilot&ref_type=engagement&ref_style=button&ref_plan=free" target="_blank" class="btn btn-primary mt-3 mr-3 no-underline"><span>Try {% data variables.product.prodname_copilot_short %} for free</span> {% octicon "link-external" height:16 %}</a>
|
||||||
versions:
|
versions:
|
||||||
feature: copilot
|
feature: copilot-create-issues
|
||||||
topics:
|
topics:
|
||||||
- Copilot
|
- Copilot
|
||||||
- Issues
|
- Issues
|
||||||
@@ -13,6 +13,7 @@ redirect_from:
|
|||||||
- /copilot/using-github-copilot/using-github-copilot-to-create-issues
|
- /copilot/using-github-copilot/using-github-copilot-to-create-issues
|
||||||
- /copilot/how-tos/github-flow/using-github-copilot-to-create-issues
|
- /copilot/how-tos/github-flow/using-github-copilot-to-create-issues
|
||||||
- /copilot/how-tos/github-flow/use-copilot-to-create-issues
|
- /copilot/how-tos/github-flow/use-copilot-to-create-issues
|
||||||
|
- /copilot/how-tos/use-copilot-for-common-tasks/use-copilot-to-create-issues
|
||||||
contentType: how-tos
|
contentType: how-tos
|
||||||
category:
|
category:
|
||||||
- Author and optimize with Copilot
|
- Author and optimize with Copilot
|
||||||
@@ -21,9 +22,9 @@ category:
|
|||||||
> [!NOTE]
|
> [!NOTE]
|
||||||
> This feature is in {% data variables.release-phases.public_preview %} and subject to change.
|
> This feature is in {% data variables.release-phases.public_preview %} and subject to change.
|
||||||
|
|
||||||
Creating issues manually can be repetitive and time-consuming. With {% data variables.product.prodname_copilot_short %}, you can create issues faster by prompting in natural language, or even by uploading a screenshot. {% data variables.product.prodname_copilot_short %} fills out the title, body, labels, assignees, and more, using your repository’s issue forms or templates.
|
Creating or updating issues manually can be repetitive and time-consuming. With {% data variables.product.prodname_copilot_short %}, you can create or update issues faster by prompting in natural language, or even by uploading a screenshot. {% data variables.product.prodname_copilot_short %} fills out the title, body, labels, assignees, and more, using your repository’s issue forms or templates.
|
||||||
|
|
||||||
You stay in control of the process. You can review and refine what {% data variables.product.prodname_copilot_short %} suggests before you submit the new issue.
|
You stay in control of the process. You can review and refine what {% data variables.product.prodname_copilot_short %} suggests before you submit the new or updated issue.
|
||||||
|
|
||||||
## Creating an issue with {% data variables.product.prodname_copilot_short %}
|
## Creating an issue with {% data variables.product.prodname_copilot_short %}
|
||||||
|
|
||||||
@@ -102,7 +103,17 @@ For example, you can:
|
|||||||
|
|
||||||
Once you've finished editing the drafts and are ready to publish the issues, click **Review and create** then click **Create issues**.
|
Once you've finished editing the drafts and are ready to publish the issues, click **Review and create** then click **Create issues**.
|
||||||
|
|
||||||
## Working with existing issues
|
## Updating an existing issue
|
||||||
|
|
||||||
|
You can use {% data variables.product.prodname_copilot_short %} to update existing issues in your repository.
|
||||||
|
|
||||||
|
For example:
|
||||||
|
|
||||||
|
`In octo-org/octo-repo, update issue #123 to add more details about the bug and steps to reproduce it. Also, change the label to "bug" and assign it to @username.`
|
||||||
|
|
||||||
|
{% data variables.product.prodname_copilot_short %} drafts the updated issue, which you can review and edit in the workbench. To publish the changes, click **Update**.
|
||||||
|
|
||||||
|
## Working with existing parent issues and sub-issues
|
||||||
|
|
||||||
You can use {% data variables.product.prodname_copilot_short %} to connect new issues with issues that already exist in your repository.
|
You can use {% data variables.product.prodname_copilot_short %} to connect new issues with issues that already exist in your repository.
|
||||||
|
|
||||||
@@ -112,7 +112,7 @@ Now that you’ve generated and refined your project issues, you can assign them
|
|||||||
|
|
||||||
## Further reading
|
## Further reading
|
||||||
|
|
||||||
* [AUTOTITLE](/copilot/how-tos/use-copilot-for-common-tasks/use-copilot-to-create-issues)
|
* [AUTOTITLE](/copilot/how-tos/use-copilot-for-common-tasks/use-copilot-to-create-or-update-issues)
|
||||||
* [AUTOTITLE](/copilot/tutorials/coding-agent/pilot-coding-agent)
|
* [AUTOTITLE](/copilot/tutorials/coding-agent/pilot-coding-agent)
|
||||||
* [AUTOTITLE](/copilot/tutorials/coding-agent/get-the-best-results)
|
* [AUTOTITLE](/copilot/tutorials/coding-agent/get-the-best-results)
|
||||||
* [AUTOTITLE](/copilot/tutorials/speed-up-development-work)
|
* [AUTOTITLE](/copilot/tutorials/speed-up-development-work)
|
||||||
|
|||||||
7
data/features/copilot-create-issues.yml
Normal file
7
data/features/copilot-create-issues.yml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# Reference: #19182
|
||||||
|
# Copilot create issues public beta
|
||||||
|
|
||||||
|
versions:
|
||||||
|
fpt: '*'
|
||||||
|
ghec: '*'
|
||||||
|
ghes: '>= 3.20'
|
||||||
@@ -8,6 +8,21 @@ interface DataSchemas {
|
|||||||
[key: string]: string
|
[key: string]: string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Helper function to resolve schema paths based on runtime context
|
||||||
|
function resolveSchemaPath(filename: string): string {
|
||||||
|
// Check if we're in a test context
|
||||||
|
const isTest = process.env.NODE_ENV === 'test'
|
||||||
|
|
||||||
|
if (isTest) {
|
||||||
|
// Use relative paths that work for vitest and 4.x compatibility with
|
||||||
|
// dynamic imports in particular
|
||||||
|
return `../lib/data-schemas/${filename}`
|
||||||
|
} else {
|
||||||
|
// Use absolute paths that work for content linter and other contexts
|
||||||
|
return `@/data-directory/lib/data-schemas/${filename}`
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Auto-discover table schemas from data/tables/ directory
|
// Auto-discover table schemas from data/tables/ directory
|
||||||
function loadTableSchemas(): DataSchemas {
|
function loadTableSchemas(): DataSchemas {
|
||||||
const tablesDir = path.join(process.cwd(), 'data/tables')
|
const tablesDir = path.join(process.cwd(), 'data/tables')
|
||||||
@@ -22,8 +37,8 @@ function loadTableSchemas(): DataSchemas {
|
|||||||
const schemaPath = path.join(schemasDir, `${name}.ts`)
|
const schemaPath = path.join(schemasDir, `${name}.ts`)
|
||||||
|
|
||||||
if (fs.existsSync(schemaPath)) {
|
if (fs.existsSync(schemaPath)) {
|
||||||
// Use relative path from test file for vitest 4.x compatibility with dynamic imports
|
// Use the resolver for consistent path handling
|
||||||
tableSchemas[`data/tables/${yamlFile}`] = `../lib/data-schemas/tables/${name}.ts`
|
tableSchemas[`data/tables/${yamlFile}`] = resolveSchemaPath(`tables/${name}.ts`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -32,15 +47,14 @@ function loadTableSchemas(): DataSchemas {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Manual schema registrations for non-table data
|
// Manual schema registrations for non-table data
|
||||||
// Use relative paths from the test file for vitest 4.x compatibility with dynamic imports
|
|
||||||
const manualSchemas: DataSchemas = {
|
const manualSchemas: DataSchemas = {
|
||||||
'data/features': '../lib/data-schemas/features.ts',
|
'data/features': resolveSchemaPath('features.ts'),
|
||||||
'data/variables': '../lib/data-schemas/variables.ts',
|
'data/variables': resolveSchemaPath('variables.ts'),
|
||||||
'data/learning-tracks': '../lib/data-schemas/learning-tracks.ts',
|
'data/learning-tracks': resolveSchemaPath('learning-tracks.ts'),
|
||||||
'data/release-notes': '../lib/data-schemas/release-notes.ts',
|
'data/release-notes': resolveSchemaPath('release-notes.ts'),
|
||||||
'data/code-languages.yml': '../lib/data-schemas/code-languages.ts',
|
'data/code-languages.yml': resolveSchemaPath('code-languages.ts'),
|
||||||
'data/glossaries/candidates.yml': '../lib/data-schemas/glossaries-candidates.ts',
|
'data/glossaries/candidates.yml': resolveSchemaPath('glossaries-candidates.ts'),
|
||||||
'data/glossaries/external.yml': '../lib/data-schemas/glossaries-external.ts',
|
'data/glossaries/external.yml': resolveSchemaPath('glossaries-external.ts'),
|
||||||
}
|
}
|
||||||
|
|
||||||
// Combine manual registrations with auto-discovered table schemas
|
// Combine manual registrations with auto-discovered table schemas
|
||||||
|
|||||||
Reference in New Issue
Block a user