Skip to main content
Skip to content

Finding public code that matches GitHub Copilot suggestions

Learn how to view code references when GitHub Copilot makes suggestions that matches publicly available code.

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.

Introduction

If you allow GitHub Copilot to make suggestions that match publicly available code or use a product that does not support "Block" mode, Copilot will display references to any similar code that is found. See GitHub Copilot代码引用.

Prerequisites

References to matching code are only generated if you use a product that does not support "Block" mode, or 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 以个人订阅者身份管理 GitHub Copilot 策略 or 管理组织中GitHub Copilot的策略和功能.

View code references for inline suggestions

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

可以通过提示 Copilot 添加一些常用代码并检查日志中的输出来验证代码引用是否正常工作。

  1. 创建名为 fizz-buzz.js 的文件,并在编辑器中打开它。

  2. 显示前一节中描述的日志。

  3. 在编辑器中,键入:

    function fizzBuzz()
    

    在右括号后加一个空格。

    GitHub Copilot 应会建议可用来完成函数的代码。 通常,建议会是一个常见的 fizz buzz 算法的实现,它将与 GitHub 网站上正式发布的代码匹配。

  4. 要接受建议,请按 Tab。

  5. 检查是否已将类似代码的任何条目添加到日志中。

View code references for inline suggestions

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 an inline 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 the inline suggestion.
    • 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

可以通过提示 Copilot 添加一些常用代码并检查日志中的输出来验证代码引用是否正常工作。

  1. 创建名为 fizz-buzz.js 的文件,并在编辑器中打开它。

  2. 显示前一节中描述的日志。

  3. 在编辑器中,键入:

    function fizzBuzz()
    

    在右括号后加一个空格。

    GitHub Copilot 应会建议可用来完成函数的代码。 通常,建议会是一个常见的 fizz buzz 算法的实现,它将与 GitHub 网站上正式发布的代码匹配。

  4. 要接受建议,请按 Tab。

  5. 检查是否已将类似代码的任何条目添加到日志中。

View code references for inline suggestions

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 an inline 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

可以通过提示 Copilot 添加一些常用代码并检查日志中的输出来验证代码引用是否正常工作。

  1. 创建名为 fizz-buzz.js 的文件,并在编辑器中打开它。

  2. 显示前一节中描述的日志。

  3. 在编辑器中,键入:

    function fizzBuzz()
    

    在右括号后加一个空格。

    GitHub Copilot 应会建议可用来完成函数的代码。 通常,建议会是一个常见的 fizz buzz 算法的实现,它将与 GitHub 网站上正式发布的代码匹配。

  4. 要接受建议,请按 Tab。

  5. 检查是否已将类似代码的任何条目添加到日志中。

View code references for Copilot Chat

如果 Copilot Chat 中的响应包含匹配代码,则会在响应末尾通过以下文本指明:

找到具有 n 种许可证类型的类似代码 - 查看匹配项

  1. 单击“查看匹配项”以在新编辑器选项卡中显示匹配代码的详细信息。

    对于匹配代码的每个示例,编辑器显示:

    • 匹配代码的许可证类型(如果已知)。
    • 在 GitHub.com 上找到匹配代码的文件的 URL。
    • 显示匹配代码的代码片段。
  2. 在编辑器中,按下 Ctrl 并单击 (Windows/Linux) 或按下 Command 并单击 (Mac) 即可查看 GitHub.com 上的完整文件。

如果 Copilot Chat 中的响应包含匹配代码,则会在响应末尾通过以下文本指明:

找到具有 n 种许可证类型的类似代码 - 查看匹配项

  1. 单击“查看匹配项”以在新编辑器选项卡中显示匹配代码的详细信息。

    对于匹配代码的每个示例,编辑器显示:

    • 匹配代码的许可证类型(如果已知)。
    • 在 GitHub.com 上找到匹配代码的文件的 URL。
    • 显示匹配代码的代码片段。
  2. 在编辑器中,按下 Ctrl 并单击 (Windows/Linux) 或按下 Command 并单击 (Mac) 即可查看 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	```

View code references for Copilot Chat

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 an inline 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.

View code references for Copilot cloud agent

When Copilot provides a response that includes code that matches code in a public GitHub repository, this is indicated in the agent session logs with a link to display details of the matched code. For more information, see 管理智能体会话.

Further reading