Skip to main content

Como procurar um código público que corresponde às sugestões do GitHub Copilot

Se você permitir que o GitHub Copilot faça sugestões que correspondam ao código disponível publicamente, você verá referências ao código correspondente que foi encontrado no GitHub.com.

Limitações

No momento, as referências ao código correspondente estão disponíveis apenas no Visual Studio Code.

Pré-requisitos

As referências ao código correspondente só serão geradas se Copilot estiver configurado para permitir sugestões que correspondam ao código disponível publicamente. Para obter mais informações, confira "Como gerenciar políticas do Copilot como um assinante individual".

Sobre a referência de código no GitHub Copilot

Se você permitiu sugestões que correspondem ao código público, o GitHub Copilot no VS Code poderá fornecer detalhes do código ao qual uma sugestão corresponde. Isso acontece:

  • Quando você aceita uma sugestão de conclusão do código no editor.
  • Quando uma resposta no Copilot Chat inclui código correspondente.

Esse recurso é chamado de referência de código.

Referência de código para conclusão do código do Copilot

Quando você aceita uma sugestão de conclusão do código que corresponda a um código em um repositório público do GitHub, uma entrada será adicionada a um log do GitHub Copilot. A entrada de log inclui um link para uma página no GitHub.com, onde você pode exibir referências a códigos semelhantes em repositórios públicos do GitHub.

A página da Web do link inclui detalhes de qualquer licença identificada para o repositório onde o código correspondente foi encontrado. Depois de revisar as referências, você pode decidir como proceder. Por exemplo, você pode decidir qual atribuição usar ou se deseja remover esse código do seu projeto.

Note

  • A referência de código ocorre apenas para correspondências de sugestões aceitas pelo Copilot. O código que você escreveu e as sugestões do Copilot que você alterou não são verificados quanto a correspondências com código público.
  • Normalmente, as correspondências com um código público ocorrem em menos de um por cento das sugestões do Copilot e, portanto, você não deve esperar ver referências de código para muitas sugestões.

Referência de código para Copilot Chat

Quando Copilot Chat fornece uma resposta que inclui código que corresponde ao código em um repositório do GitHub público, isso é indicado no final da resposta com um link para exibir detalhes do código correspondente no editor do VS Code.

Como a referência de código encontra o código correspondente

A referência de código do Copilot procura correspondências tomando a sugestão de código, mais algum código circundante, e comparando isso com um índice de todos os repositórios públicos no GitHub.com. Códigos em repositórios privados do GitHub ou fora do GitHub não são incluídos no processo de pesquisa. O índice de pesquisa é atualizado no intervalo de poucos meses. Por isso, códigos recém-confirmados e códigos de repositórios públicos excluídos antes da criação do índice talvez não sejam incluídos na pesquisa. Pelo mesmo motivo, a pesquisa talvez retorne correspondências a um código que foi excluído ou movido desde a criação do índice.

Exibir referências de código para conclusão do código

Você pode acessar as referências de código em um dos logs do GitHub Copilot no Visual Studio Code.

  1. No Visual Studio Code, abra a janela de Saída selecionando Exibir > saída na barra de menus.

  2. No menu suspenso à direita da janela de Saída, selecione o log do GitHub Copilot.

    Captura de tela da janela de Saída com o "log do GitHub Copilot" selecionado no menu suspenso.

  3. Deixe o log do GitHub Copilot em exibição enquanto você usa o GitHub Copilot no Visual Studio Code.

    Quando você aceita uma sugestão de conclusão do código que corresponda a um código em um repositório público do GitHub, uma entrada será adicionada ao log.

    A entrada de log inclui os seguintes detalhes:

    • A data e hora em que aceitou a sugestão.
    • O nome do arquivo no qual a sugestão foi adicionada.
    • Uma mensagem informando que um código semelhante foi encontrado, com o número e o tipo de licenças.
    • Um link para uma página no GitHub.com.
    • O local no arquivo onde a sugestão foi adicionada.
    • Um trecho da parte do código que foi sugerido e adicionado.

    Captura de tela da janela de Saída mostrando uma entrada de log de referência de código.

    Note

    Observação: O log do GitHub Copilot é liberado quando você fecha o editor.

  4. Na entrada de log, use Ctrl+clique (Windows/Linux) ou Command+clique (Mac) no link para exibir as referências de código no GitHub.com.

    A página lista as correspondências que foram encontradas, mostrando um trecho do arquivo relevante. Você pode clicar no nome do arquivo para visualizar o arquivo inteiro.

    Captura de tela das referências de código listadas no GitHub.com.

    As correspondências podem ser encontradas em vários repositórios com licenças diferentes, às vezes conflitantes. Você pode usar as caixas de seleção à esquerda da página para exibir apenas as correspondências associadas a uma licença específica.

    Você deve revisar todas as informações de licença em um repositório para verificar se elas se aplicam ao código correspondente, já que os repositórios podem conter várias licenças, que estão sujeitas a erros de natureza humana ou não.

    Note

    Observação: a página da Web que exibe o conjunto completo de detalhes permanecerá disponível por três meses.

Como verificar se a referência de código funciona

Você pode verificar se a referência de código está funcionando solicitando que o Copilot adicione algum código comumente usado e verificando a saída no log do Copilot.

  1. Em Visual Studio Code, crie um arquivo chamado fizz-buzz.js.

  2. Abra a janela de Saída selecionando Exibir > saída, na barra de barra de menus.

  3. No menu suspenso à direita da janela de Saída, selecione o log do GitHub Copilot.

  4. No editor, digite:

    function fizzBuzz()
    

    GitHub Copilot deve sugerir um código para concluir a função.

  5. Aceite a sugestão pressionando a Tab.

    Se a referência de código encontrar uma correspondência com o código público, uma entrada de log será adicionada ao log do GitHub Copilot exibido.

Exibir referências de código para Copilot Chat

Se uma resposta em Copilot Chat incluir código correspondente, isso será indicado no final da resposta pelo seguinte texto:

Código semelhante encontrado com n tipos de licença – Exibir correspondências

  1. Clique em Exibir correspondências para exibir detalhes do código correspondente em uma nova guia do editor.

    Para cada exemplo de código correspondente, o editor exibe:

    • O tipo de licença para o código correspondente, se conhecido.
    • A URL do arquivo em GitHub.com em que o código correspondente foi encontrado.
    • Um snippet de código mostrando o código correspondente.
  2. Na entrada de log, use Ctrl + Clique (Windows/Linux) ou Command + Clique (Mac) no link para exibir as referências de código no GitHub.com.