Skip to main content

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

Hier erfährst du, wie du Codeverweise anzeigst, wenn GitHub Copilot Vorschläge zur Übereinstimmung mit öffentlich verfügbaren Code macht.

Diese Version des Artikels bezieht sich auf Copilot in JetBrains-IDEs. Klicke für Copilot auf anderen Plattformen auf die entsprechende Registerkarte oben.

Diese Version dieses Artikels bezieht sich auf Copilot in Visual Studio Code. Klicke für Copilot auf anderen Plattformen auf die entsprechende Registerkarte oben.

Diese Version dieses Artikels bezieht sich auf Copilot auf der GitHub-Website. Klicke für Copilot auf anderen Plattformen auf die entsprechende Registerkarte oben.

Diese Version des Artikels bezieht sich auf Copilot in Visual Studio. Klicke für Copilot auf anderen Plattformen auf die entsprechende Registerkarte oben.

Einführung

Wenn Sie GitHub Copilot erlauben, Vorschläge zu machen, die öffentlich verfügbaren Code entsprechen, oder ein Produkt verwenden, das den Modus "Blockieren" nicht unterstützt, zeigt Copilot Verweise auf einen ähnlichen Code an, der gefunden wird. Weitere Informationen findest du unter GitHub Copilot-Codeverweise.

Voraussetzungen

Verweise auf übereinstimmenden Code werden nur generiert, wenn Sie ein Produkt verwenden, das den Blockmodus nicht unterstützt, oder wenn Copilot so konfiguriert ist, dass Vorschläge zugelassen werden, die öffentlich verfügbaren Code entsprechen. Dies wird entweder in deinen persönlichen Einstellungen Organisationseinstellungen oder Unternehmenseinstellungen konfiguriert.

Weitere Informationen findest du unter Verwalten von GitHub Copilot-Richtlinien als Einzelperson mit einem Abonnent Verwalten von Richtlinien und Features für GitHub Copilot in deiner Organisation oder Verwalten von Richtlinien und Features für GitHub Copilot in deinem Unternehmen.

Codeverweise für Inlinevorschläge anzeigen

Du kannst in der Protokolldatei für deine JetBrains-IDE Codeverweise anzeigen.

  1. Wähle in deiner JetBrains-IDE Help > Show Log in Finder/Explorer aus.

    Die Protokolldatei wird im Datei-Manager angezeigt. Beispiel: Für IntelliJ IDEA lautet der Name der Protokolldatei idea.log.

  2. Öffne die Protokolldatei in deiner JetBrains-IDE.

  3. Suche nach "[Public Code References]."

Beispielprotokolleintrag

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

Der Protokolleintrag enthält die folgenden Details:

  • Das Datum und die Uhrzeit, als Sie den Vorschlag angenommen haben.
  • Die Meldung „Public Code References“ informiert dich darüber, dass ähnlicher Code gefunden wurde.
  • Pfad zur Datei, in der der Vorschlag hinzugefügt wurde
  • Zeilen- und Spaltennummer, in denen der Vorschlag hinzugefügt wurde
  • Liste der Übereinstimmungen, darunter Folgendes:
    • Lizenztyp für den übereinstimmenden Code – oder NOASSERTION, wenn keine Lizenz gefunden wurde
    • Die URL der Datei auf GitHub.com, an der der übereinstimmende Code gefunden wurde.

Überprüfen des Codes, der auf die Funktionalität verweist

Du kannst überprüfen, ob der Code funktioniert, auf den verwiesen wird, indem du Copilot aufforderst, häufig verwendeten Code hinzuzufügen und die Ausgabe im Protokoll zu überprüfen.

  1. Erstelle eine Datei namens fizz-buzz.js, und öffne sie im Editor.

  2. Zeige das Protokoll wie im vorherigen Abschnitt beschrieben an.

  3. Geben Sie im Editor Folgendes ein:

    function fizzBuzz()
    

    Gib dabei ein Leerzeichen nach der schließenden Klammer ein.

    GitHub Copilot sollte Code vorschlagen, um die Funktion abzuschließen. In der Regel handelt es sich bei dem Vorschlag um eine allgemeine Implementierung des FizzBuzz-Algorithmus, der öffentlich verfügbarem Code auf der GitHub-Website entspricht.

  4. Um den Vorschlag zu akzeptieren, drücke die TAB-TASTE.

  5. Überprüfe, ob dem Protokoll Einträge für ähnlichen Code hinzugefügt wurden.

Codeverweise für Inlinevorschläge anzeigen

Codeverweise findest du in einem der GitHub Copilot-Protokolle in Visual Studio Code.

  1. Öffnen Sie in Visual Studio Code das Ausgabefenster, indem Sie in der Menüleiste Ansicht > Ausgabe auswählen.

  2. Wähle im Dropdownmenü rechts im Fenster Output den Eintrag GitHub Copilot Log (Code References) aus.

  3. Lass die Ansicht GitHub Copilot Log (Code-Referenzen) geöffnet, während du GitHub Copilot in Visual Studio Code verwendest.

    Wenn Sie einen Inlinevorschlag akzeptieren, der mit Code in einem öffentlichen GitHub Repository übereinstimmt, wird dem Logbuch ein Eintrag hinzugefügt.

    Der Protokolleintrag enthält die folgenden Details:

    • Das Datum und die Uhrzeit, als Sie den Vorschlag angenommen haben.
    • Der Name der Datei, in der der Vorschlag hinzugefügt wurde.
    • „Ähnlicher Code an“ gefolgt von der Stelle in der Datei, an der der Vorschlag hinzugefügt wurde.
    • Ein Ausschnitt des Codes, der durch den Inline-Vorschlag hinzugefügt wurde.
    • Der Lizenztyp für den übereinstimmenden Code, falls vorhanden, ansonsten unknown.
    • Die URL der Datei für GitHub.com an der Stelle, an der der ähnliche Code gefunden wurde.

Beispielprotokolleintrag

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

Überprüfen des Codes, der auf die Funktionalität verweist

Du kannst überprüfen, ob der Code funktioniert, auf den verwiesen wird, indem du Copilot aufforderst, häufig verwendeten Code hinzuzufügen und die Ausgabe im Protokoll zu überprüfen.

  1. Erstelle eine Datei namens fizz-buzz.js, und öffne sie im Editor.

  2. Zeige das Protokoll wie im vorherigen Abschnitt beschrieben an.

  3. Geben Sie im Editor Folgendes ein:

    function fizzBuzz()
    

    Gib dabei ein Leerzeichen nach der schließenden Klammer ein.

    GitHub Copilot sollte Code vorschlagen, um die Funktion abzuschließen. In der Regel handelt es sich bei dem Vorschlag um eine allgemeine Implementierung des FizzBuzz-Algorithmus, der öffentlich verfügbarem Code auf der GitHub-Website entspricht.

  4. Um den Vorschlag zu akzeptieren, drücke die TAB-TASTE.

  5. Überprüfe, ob dem Protokoll Einträge für ähnlichen Code hinzugefügt wurden.

Codeverweise für Inlinevorschläge anzeigen

Codeverweise findest du im GitHub Copilot-Protokoll in Visual Studio.

  1. Klicke in der Menüleiste auf View.

  2. Klicke im Dropdownmenü auf Output.

  3. Klicke in der Ansicht „Output“ auf das Feld rechts neben „Show output from“, und wähle GitHub Copilot aus.

  4. Lasse das Protokoll angezeigt, während du GitHub Copilot in Visual Studio Code verwendest.

    Wenn Sie einen Inlinevorschlag akzeptieren, der mit Code in einem öffentlichen GitHub Repository übereinstimmt, wird dem Logbuch ein Eintrag hinzugefügt.

    Der Protokolleintrag enthält die folgenden Details:

    • Die Uhrzeit, zu der du den Vorschlag angenommen hast. Klicke auf das Uhrsymbol „Show Timestamp“, falls die Uhrzeit nicht angezeigt wird.
    • Die [Completions Public Code Match Information]-Beschreibung.
    • Der Lizenztyp für den übereinstimmenden Code, falls vorhanden, ansonsten NOASSERTION.
    • Die URL der Datei für GitHub.com an der Stelle, an der der ähnliche Code gefunden wurde.

Beispielprotokolleintrag

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

Überprüfen des Codes, der auf die Funktionalität verweist

Du kannst überprüfen, ob der Code funktioniert, auf den verwiesen wird, indem du Copilot aufforderst, häufig verwendeten Code hinzuzufügen und die Ausgabe im Protokoll zu überprüfen.

  1. Erstelle eine Datei namens fizz-buzz.js, und öffne sie im Editor.

  2. Zeige das Protokoll wie im vorherigen Abschnitt beschrieben an.

  3. Geben Sie im Editor Folgendes ein:

    function fizzBuzz()
    

    Gib dabei ein Leerzeichen nach der schließenden Klammer ein.

    GitHub Copilot sollte Code vorschlagen, um die Funktion abzuschließen. In der Regel handelt es sich bei dem Vorschlag um eine allgemeine Implementierung des FizzBuzz-Algorithmus, der öffentlich verfügbarem Code auf der GitHub-Website entspricht.

  4. Um den Vorschlag zu akzeptieren, drücke die TAB-TASTE.

  5. Überprüfe, ob dem Protokoll Einträge für ähnlichen Code hinzugefügt wurden.

Anzeigen von Codeverweisen für Copilot-Chat

Wenn eine Antwort in Copilot-Chat einen passenden Code enthält, wird das am Ende der Antwort durch den folgenden Text angezeigt:

Ähnlicher Code, der mit n Lizenztypen gefunden wurde – Übereinstimmungen anzeigen

  1. Klicken Sie auf Übereinstimmungen anzeigen, um Details des übereinstimmenden Codes auf einer neuen Editor-Registerkarte anzuzeigen.

    Für jedes Beispiel eines übereinstimmenden Codes zeigt der Editor Folgendes an:

    • Der Lizenztyp für den übereinstimmenden Code, falls bekannt.
    • Die URL der Datei für GitHub.com an der Stelle, an der der übereinstimmende Code gefunden wurde.
    • Ein Code-Schnipsel mit dem übereinstimmenden Code.
  2. Klicken Sie im Editor bei gedrückter Strg-Taste (Windows/Linux) bzw. Befehlstaste (Mac) auf eine URL, um die vollständige Datei auf GitHub.com anzuzeigen.

Wenn eine Antwort in Copilot-Chat einen passenden Code enthält, wird das am Ende der Antwort durch den folgenden Text angezeigt:

Ähnlicher Code, der mit n Lizenztypen gefunden wurde – Übereinstimmungen anzeigen

  1. Klicken Sie auf Übereinstimmungen anzeigen, um Details des übereinstimmenden Codes auf einer neuen Editor-Registerkarte anzuzeigen.

    Für jedes Beispiel eines übereinstimmenden Codes zeigt der Editor Folgendes an:

    • Der Lizenztyp für den übereinstimmenden Code, falls bekannt.
    • Die URL der Datei für GitHub.com an der Stelle, an der der übereinstimmende Code gefunden wurde.
    • Ein Code-Schnipsel mit dem übereinstimmenden Code.
  2. Klicken Sie im Editor bei gedrückter Strg-Taste (Windows/Linux) bzw. Befehlstaste (Mac) auf eine URL, um die vollständige Datei auf GitHub.com anzuzeigen.

Wenn eine Antwort in Copilot-Chat übereinstimmenden Code enthält, steht dieser unterhalb des vorgeschlagenen Codes im folgenden Text:

Ähnliche Code in öffentlichen Repositorys gefunden. Übereinstimmungen anzeigen

Klicke auf View matches, um das GitHub Copilot-Protokoll zu öffnen, sofern es nicht bereits geöffnet ist, und füge die Details des übereinstimmenden Codes hinzu.

Die Details umfassen Folgendes:

  • Die Uhrzeit, zu der du dem Protokoll die Details hinzugefügt hast. Klicke auf das Uhrsymbol „Show Timestamp“, falls die Uhrzeit nicht angezeigt wird.
  • Die Beschreibung [Code Match] als erster Protokolleintrag vor der Liste des passenden Codes.
  • Der Lizenztyp (sofern vorhanden) für jede Instanz ähnlichen Codes.
  • Die URL der Datei auf GitHub.com, an der der übereinstimmende Code gefunden wurde.
  • Ein Code-Schnipsel mit dem übereinstimmenden Code.

Beispiel für die Protokollierung

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    ```

Codeverweise anzeigen für Copilot-Chat

Wenn Copilot-Chat eine Antwort zurückgibt, die Code enthält, der mit Code in einem öffentlichen GitHub-Repository übereinstimmt, wird dies unter dem Codevorschlag angezeigt:

< > Verweise auf öffentliche Code aus n-Repositorys

Um Details zum übereinstimmenden Code anzuzeigen:

  1. Klicken Sie auf den Text „Public code references...“ unter dem Codevorschlag.

    Eine Liste von GitHub-Repositorys mit übereinstimmendem Code und ggf. mit Lizenzinformationen wird in einer Dropdownliste angezeigt.

    Screenshot eines Inlinevorschlags in Copilot-Chat mit einem Link zum Anzeigen von Codeverweisen.

  2. Klicke auf den Namen eines Repositorys, um dieses Repository auf GitHub.com anzuzeigen.

Codeverweise für Copilot-Programmierassistent

anzeigen

Wenn Copilot eine Antwort bereitstellt, die Code enthält, der Code in einem öffentlichen GitHub Repository entspricht, wird dies in den Sitzungsprotokollen des Agenten mit einem Link, um Details des übereinstimmenden Codes anzuzeigen, angegeben. Weitere Informationen finden Sie unter Nachverfolgen von GitHub Copilot-Sitzungen.

Weiterführende Lektüre

  •         [AUTOTITLE](/copilot/concepts/completions/code-referencing)