Greifen Sie mit dem Projektzugriffstoken auf das GitLab-Repository zu

Lesezeit: 3 Minuten

Laut Dokumentation soll es möglich sein, mit GitLab auf Repos zuzugreifen Projektzugriffstoken:

Der Benutzername ist auf project_{project_id}_bot festgelegt, z. B. project_123_bot.

Egal, das ist eine Lüge – der eigentliche Benutzer wird angerufen project_4194_bot1 in meinem Fall; anscheinend erhöhen sie eine Zahl für nachfolgende Token.

So oder so – und ich haben habe es sowohl mit als auch ohne Nachlauf versucht 1 — Ich würde erwarten

git clone "https://project_4194_bot1:[email protected]/my-group/my-project.git"

um erfolgreich zu sein, genauso wie mit my.username:$PERSONAL_TOKEN (was perfekt funktioniert). Allerdings bekomme ich

remote: HTTP Basic: Access denied
fatal: Authentication failed for '<snip>'

Was kann hier los sein? Wie kann ich mit Projektzugriffstoken auf GitLab-Repositories zugreifen?


Es ist nicht so, dass wir so weit kommen würden, aber FWIW, das Token scheint ausreichende Berechtigungen zu haben:

Geben Sie hier die Bildbeschreibung ein

  • Problemumgehung mit SSH-Schlüsseln funktioniert wie folgt dokumentiertfühlt sich aber unnötig verworren an.

    – Raffael

    17. September 2020 um 16:44 Uhr

  • Herzlich willkommen, hinzugefügt! Ich habe eigentlich keine Ahnung, wo ich diese Lösung gefunden habe, aber sie war in einem Skript von mir. Dies sollte eigentlich irgendwo in den GitLab-Dokumenten dokumentiert sein, aber ich konnte es nicht finden.

    – Rafael-WO

    17. März 2021 um 13:36 Uhr

  • @ Rafael-WO Ich bin mir ziemlich sicher, dass ich alles zu diesem Thema gelesen habe. Werde es noch einmal prüfen und vielleicht eine Änderung vorschlagen, wenn ich die Zeit finde.

    – Raffael

    17. März 2021 um 13:53 Uhr

Benutzeravatar von Rafael-WO
Rafael-WO

Es scheint, dass die Verwendung des Projektnamens als Benutzername funktioniert. In Ihrem Fall ersetzen project_4194_bot1 mit my-project sollte arbeiten:

git clone "https://my-project:[email protected]/my-group/my-project.git"

BEARBEITEN: Man kann tatsächlich jeden nicht leeren Wert als Benutzernamen verwenden (siehe Dokumente), wie andere richtig darauf hingewiesen haben.

  • Wie geschrieben, diese Antwort ist irreführend. Von dem GitLab-Dokumentation: “Verwenden Sie bei Verwendung der HTTP-Basisauthentifizierung einen beliebigen nicht leeren Wert als Benutzernamen und das Projektzugriffstoken als Kennwort”.

    – Gavin Uberti

    27. Juni um 18:17 Uhr

  • Wie Gavin sagte, habe ich es mit einem beliebigen Namen anstelle von “my-project” versucht und es funktioniert

    – An_Bk

    18. August um 18:55 Uhr

Von dem GitLab-Dokumentation:

Verwenden Sie mit Git bei Verwendung der HTTP-Basisauthentifizierung Folgendes:

  • Jeder nicht leere Wert als Benutzername.
  • Das Projektzugriffstoken als Kennwort.

In früheren GitLab-Versionen wäre die Verwendung notwendig gewesen project_4194_bot1 als Benutzername. In der aktuellen Version können Sie jedoch jeden beliebigen Benutzernamen verwenden:

git clone "https://anything:[email protected]/my-group/my-project.git"

Benutzeravatar von Janner
Janner

Ich habe festgestellt, dass der „Benutzer“ je nach Git-Version leer oder eine zufällige Zeichenfolge bleiben kann, wenn das Token ein Projektzugriffstoken ist.

git clone "https://<$USER>:[email protected]/my-group/my-project.git"

  • Willkommen bei StackOverflow! Ihre neue Antwort scheint der Antwort zu widersprechen, die funktioniert hat und vor über einem Jahr akzeptiert wurde. Es ist nichts falsch daran, eine neue Antwort auf eine alte Frage hinzuzufügen (siehe “Ich habe eine neue Antwort auf eine (oder mehrere) alte Frage”), aber wenn Sie der Meinung sind, dass “$TOKEN_NAME” richtiger ist als “my-project, ” Dann fügen Sie bitte eine Erklärung zum Nutzen unserer anderen Benutzer hinzu. Danke, und viel Spaß auf der Seite!

    – B. Shefter

    23. März um 0:48 Uhr


1429320cookie-checkGreifen Sie mit dem Projektzugriffstoken auf das GitLab-Repository zu

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy