Skip to main content

Suchen von öffentlichem Code, der mit GitHub Copilot-Vorschlägen übereinstimmt

Wenn du zulässt, dass GitHub Copilot Vorschläge machen darf, die mit öffentlich verfügbarem Code übereinstimmen, werden in Copilot Verweise auf alle gefundenen übereinstimmenden Codeteile angezeigt.

This version of this article is for Copilot in JetBrains IDEs. For Copilot on other platforms, click the appropriate tab above.

This version of this article is for Copilot in Visual Studio Code. For Copilot on other platforms, click the appropriate tab above.

This version of this article is for Copilot on the GitHub website. For Copilot on other platforms, click the appropriate tab above.

This version of this article is for Copilot in Visual Studio. For Copilot on other platforms, click the appropriate tab above.

Limitations

References to matching code are currently available in JetBrains IDEs, Visual Studio, Visual Studio Code, and on the GitHub website.

Prerequisites

References to matching code are only generated if Copilot is configured to allow suggestions that match publicly available code. This is configured in either your personal or organization settings. For more information, see Managing Copilot policies as an individual subscriber or Managing policies for Copilot in your organization.

About code referencing in GitHub Copilot

If you've allowed suggestions that match public code, GitHub Copilot can provide you with details of the code that a suggestion matches. This happens:

  • When you accept a code completion suggestion in the editor.
  • When a response in Copilot Chat includes matching code.

If you've allowed suggestions that match public code, GitHub Copilot can provide you with details of the code that a suggestion matches. This happens:

  • When you accept a code completion suggestion in the editor.
  • When a response in Copilot Chat includes matching code.

If you've allowed suggestions that match public code, then whenever a response from Copilot Chat includes matching code, details of the matches will be included in the response.

If you've allowed suggestions that match public code, GitHub Copilot can provide you with details of the code that a suggestion matches. This happens:

  • When you accept a code completion suggestion in the editor.
  • When a response in Copilot Chat includes matching code.

This feature is called code referencing.

Code referencing for Copilot code completion

When you accept a code completion suggestion that matches code in a public GitHub repository, information about the matching code is logged. The log entry includes the URLs of files containing matching code, and the name of the license that applies to that code, if any was found. This allows you to review these references and decide how to proceed. For example, you can decide what attribution to use, or whether you want to remove this code from your project.

Note

  • Code referencing for code completion only occurs for matches of accepted Copilot suggestions. Code you have written, and Copilot suggestions you have altered, are not checked for matches to public code.
  • Typically, matches to public code occur in less than one percent of Copilot suggestions, so you should not expect to see code references for many suggestions.

Code referencing for Copilot Chat

When Copilot Chat provides a response that includes code that matches code in a public GitHub repository, this is indicated at the end of the response with a link to display details of the matched code in the editor.

Note

Typically, matches to public code occur infrequently, so you should not expect to see code references in many Copilot Chat responses.

Code referencing for Copilot code completion

When you accept a code completion suggestion that matches code in a public GitHub repository, information about the matching code is logged. The log entry includes the URLs of files containing matching code, and the name of the license that applies to that code, if any was found. This allows you to review these references and decide how to proceed. For example, you can decide what attribution to use, or whether you want to remove this code from your project.

Note

  • Code referencing for code completion only occurs for matches of accepted Copilot suggestions. Code you have written, and Copilot suggestions you have altered, are not checked for matches to public code.
  • Typically, matches to public code occur in less than one percent of Copilot suggestions, so you should not expect to see code references for many suggestions.

Code referencing for Copilot Chat

When Copilot Chat provides a response that includes code that matches code in a public GitHub repository, this is indicated at the end of the response with a link to display details of the matched code in the editor.

Code referencing for Copilot code completion

When you accept a code completion suggestion that matches code in a public GitHub repository, information about the matching code is logged. The log entry includes the URLs of files containing matching code, and the name of the license that applies to that code, if any was found. This allows you to review these references and decide how to proceed. For example, you can decide what attribution to use, or whether you want to remove this code from your project.

Note

  • Code referencing for code completion only occurs for matches of accepted Copilot suggestions. Code you have written, and Copilot suggestions you have altered, are not checked for matches to public code.
  • Typically, matches to public code occur in less than one percent of Copilot suggestions, so you should not expect to see code references for many suggestions.

Code referencing for Copilot Chat

When Copilot Chat provides a response that includes code that matches code in a public GitHub repository, this is indicated below the suggested code, with a link to display details of the matched code in the output log.

How code referencing finds matching code

Copilot code referencing searches for matches by taking the code suggestion, plus some of the code that will surround the suggestion if it is accepted, and comparing it against an index of all public repositories on GitHub.com. Code in private GitHub repositories, or code outside of GitHub, is not included in the search process. The search index is refreshed every few months. As a result, newly committed code, and code from public repositories deleted before the index was created, may not be included in the search. For the same reason, the search may return matches to code that has been deleted or moved since the index was created.

View code references for code completion

You can view code references in the log file for your JetBrains IDE.

  1. In your JetBrains IDE, select Help > Show Log in Finder/Explorer.

    The log file is displayed in your file manager. For example, for IntelliJ IDEA the log file is called idea.log.

  2. Open the log file in your JetBrains IDE.

  3. Search for "[Public Code References]."

Example log entry

2025-02-26 09:22:12,045 [5581906] INFO - #copilot - [Public Code References] Text found matching public code in file:///Users/mona-lisa/git-repos/test-repo/fizzbuzz.js [Ln 1, Col 10] near fizzBuzz() ...:
  1) [NOASSERTION] https://github.com/nixsticks/todos/blob/ae427a721c7784da64a619ba17f60637fe1cc819/Loops/fizzbuzz/fizzbuzz.js
  2) [GPL-3.0] https://github.com/voloslg/algocasts/blob/34b423517486f908ca167b390d3b8bd05653829f/exercises/fizzbuzz/index.js

The log entry includes the following details:

  • The date and time you accepted the suggestion.
  • A "Public Code References" message telling you that similar code was found.
  • The path to the file in which the suggestion was added.
  • The line and column number where the suggestion was added.
  • A list of matches, including:
    • The license type for the matching code—or NOASSERTION if no license was found.
    • The URL of the file on GitHub.com where the matching code was found.

Verifying the code referencing functionality

You can verify that code referencing is working by prompting Copilot to add some commonly used code and checking the output in the log.

  1. Create a file called fizz-buzz.js and open it in the editor.

  2. Display the log as described in the previous section.

  3. In the editor, type:

    function fizzBuzz()
    

    With a space after the closing parenthesis.

    GitHub Copilot should suggest code to complete the function. Typically the suggestion will be a common implementation of the fizz buzz algorithm that will match publicly available code on the GitHub website.

  4. To accept the suggestion, press Tab.

  5. Check whether any entries for similar code have been added to the log.

View code references for code completion

You can find code references in one of the GitHub Copilot logs in Visual Studio Code.

  1. In Visual Studio Code, open the Output window by selecting View > Output from the menu bar.

  2. In the dropdown menu at the right of the Output window, select GitHub Copilot Log (Code References).

  3. Leave the GitHub Copilot Log (Code References) view displayed while you use GitHub Copilot in Visual Studio Code.

    When you accept a code completion suggestion that matches code in a public GitHub repository, an entry is added to the log.

    The log entry includes the following details:

    • The date and time you accepted the suggestion.
    • The name of the file in which the suggestion was added.
    • "Similar code at" followed by the location in the file where the suggestion was added.
    • An extract of the code that was added by code completion.
    • The license type for the matching code, if found, otherwise unknown.
    • The URL of the file on GitHub.com where the similar code was found.

Example log entry

2025-03-27 12:17:54.759 [info] file:///Users/monalisa/fizzbuzz.js Similar code at  [Ln 2, Col 8] let i = 1; i <= 100; i++) {  let output = '';  if (i % 3 === 0) {  output += 'Fizz';...
2025-03-27 12:17:54.759 [info] License: unknown, URL: https://github.com/octo-org/octo-repo/blob/8563f3b1d4f33952b22212b86e745539d1567ed1/examples/fizzBuzz.js
2025-03-27 12:17:54.759 [info] License: MIT, URL: https://github.com/octo-org/monalisa/blob/7e974691f4c8e6bc55f9b50688f05d746d1bc52b/exercises/2/fizz-buzz.js

Verifying the code referencing functionality

You can verify that code referencing is working by prompting Copilot to add some commonly used code and checking the output in the log.

  1. Create a file called fizz-buzz.js and open it in the editor.

  2. Display the log as described in the previous section.

  3. In the editor, type:

    function fizzBuzz()
    

    With a space after the closing parenthesis.

    GitHub Copilot should suggest code to complete the function. Typically the suggestion will be a common implementation of the fizz buzz algorithm that will match publicly available code on the GitHub website.

  4. To accept the suggestion, press Tab.

  5. Check whether any entries for similar code have been added to the log.

View code references for code completion

You can find code references in the GitHub Copilot log in Visual Studio.

  1. In the menu bar, click View.

  2. In the dropdown menu, click Output.

  3. In Output view, click the box to the right of "Show output from" and select GitHub Copilot.

  4. Leave the log displayed while you use GitHub Copilot in Visual Studio Code.

    When you accept a code completion suggestion that matches code in a public GitHub repository, an entry is added to the log.

    The log entry includes the following details:

    • The time you accepted the suggestion. Click the "Show Timestamp" clock icon if the time is not displayed.
    • The description [Completions Public Code Match Information].
    • The license type for the matching code, if found, otherwise NOASSERTION.
    • The URL of the file on GitHub.com where the similar code was found.

Example log entry

09:39:16:203	[Completions Public Code Match Information] Similar code with license type [MIT] https://github.com/octo-org/octo-repo/blob/34deb75eb6a2e22483ed465a6aec38c02eb2536e/routines/quicksort.js

Verifying the code referencing functionality

You can verify that code referencing is working by prompting Copilot to add some commonly used code and checking the output in the log.

  1. Create a file called fizz-buzz.js and open it in the editor.

  2. Display the log as described in the previous section.

  3. In the editor, type:

    function fizzBuzz()
    

    With a space after the closing parenthesis.

    GitHub Copilot should suggest code to complete the function. Typically the suggestion will be a common implementation of the fizz buzz algorithm that will match publicly available code on the GitHub website.

  4. To accept the suggestion, press Tab.

  5. Check whether any entries for similar code have been added to the log.

View code references for Copilot Chat

If a response in Copilot Chat includes matching code, this is indicated at the end of the response by the following text:

Similar code found with n license types - View matches

  1. Click View matches to display details of the matched code in a new editor tab.

    For each example of matching code, the editor displays:

    • The license type for the matching code, if known.
    • The URL of the file on GitHub.com where the matching code was found.
    • A code snippet showing the matching code.
  2. In the editor, Ctrl+click (Windows/Linux) or Command+click (Mac) a URL to view the full file on GitHub.com.

If a response in Copilot Chat includes matching code, this is indicated at the end of the response by the following text:

Similar code found with n license types - View matches

  1. Click View matches to display details of the matched code in a new editor tab.

    For each example of matching code, the editor displays:

    • The license type for the matching code, if known.
    • The URL of the file on GitHub.com where the matching code was found.
    • A code snippet showing the matching code.
  2. In the editor, Ctrl+click (Windows/Linux) or Command+click (Mac) a URL to view the full file on GitHub.com.

If a response in Copilot Chat includes matching code, this is below the suggested code by the following text:

Found similar code in public repos. View matches

Click View matches to open the GitHub Copilot log, if it is not already open, and add details of the matched code.

The details include:

  • The time you added the details to the log. Click the "Show Timestamp" clock icon if the time is not displayed.
  • The description [Code Match] as the first log entry before the list of matching code.
  • The license type—if found—for each instance of similar code.
  • The URL of the file on GitHub.com where the matching code was found.
  • A code snippet showing the matching code.

Logging example

09:24:10:525	[Code Match] Similar code with 2 license type(s) [MIT, NOASSERTION]
09:24:10:525	## License: MIT
09:24:10:525	https://github.com/octo-org/octo-repo/tree/127aac4ab27a42706af01be80f7aae3b83f44fbc/buzzfizz.py
09:24:10:525	```
09:24:10:525	for i in range(1, n + 1):
09:24:10:525	        if i % 3 == 0 and i % 5 == 0:
09:24:10:525	            print('FizzBuzz')
09:24:10:525	        elif i % 3 == 0:
09:24:10:525	            print('Fizz')
09:24:10:525	        elif i % 5 == 0:
09:24:10:525	```
09:24:10:525	## License: NOASSERTION
09:24:10:525	https://github.com/octo-org/monalisa/tree/011308746e53b26b128fa53c044a2527c39231f0/fizz-buzz.py
09:24:10:525	```
09:24:10:525	i % 3 == 0 and i % 5 == 0:
09:24:10:525	            print('FizzBuzz')
09:24:10:525	        elif i % 3 == 0:
09:24:10:525	            print('Fizz')
09:24:10:525	        elif i % 5 == 0:
09:24:10:525	            print('Buzz')
09:24:10:525	        else:
09:24:10:525	            print(i)
09:24:10:525	```

When Copilot Chat provides a response that includes code that matches code in a public GitHub repository, this is indicated beneath the code suggestion:

< > Public code references from n repositories

To see details of the matching code:

  1. Click the "Public code references..." text, under the code suggestion.

    A list of GitHub repositories containing matching code is displayed in a dropdown, together with licensing information, if found.

    Screenshot of a code completion suggestion in Copilot Chat with a link to view code references.

  2. Click the name of a repository to display that repository on GitHub.com.