gitlab kommen tar von einer spezifischen Branche über die Kommandozeile
Ich bin mit gitlab. Wenn ich in die Schnittstelle, an jedem Zweig, ich kann den Quellcode herunterladen als zip, tar oder was auch immer.
Ich bin making rpm spec-Dateien, für die ich brauchen würde, die Möglichkeit zum download der tar-ball mit Befehl Linie. da habe ich meine rsa-Schlüssel kann ich ein git clone ohne Probleme:
git clone http://gitlab/group/project.git
Cloning into 'project'...
remote: Counting objects: 1885, done.
remote: Compressing objects: 100% (826/826), done.
remote: Total 1885 (delta 1194), reused 1496 (delta 954)
Receiving objects: 100% (1885/1885), 1.30 MiB | 0 bytes/s, done.
Resolving deltas: 100% (1194/1194), done.
Checking connectivity... done
Jedoch tun,
wget http://gitlab/group/project/repository/archive.zip
wird mir dieser Fehler:
Resolving gitlab (gitlab)... 10.1.253.75
Connecting to gitlab (gitlab)|10.1.253.75|:80... connected.
HTTP request sent, awaiting response... 401 Unauthorized
Authorization failed.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Seit GitLab 6.2 und Problem 5253, es sollte sein:
Aber das scheint nur für den internen Gebrauch, da Sie nicht wissen, die id des Projekts als Benutzer (nur der name).
Vergessen Sie nicht, wie
angezeigt, in der Fähigkeit.rb
, dass das herunterladen eines Archivs ist mit einer Genehmigung. Stellen Sie sicher, dass "download_code
" Berechtigungssatz für Ihr Projekt.Hier muss man eine Erlaubnis, weil, zum Beispiel:
Das funktioniert gut, und, um den Inhalt des Projekts, ohne jede Frage.
Jedoch, wie die OP Chris Maes Kommentare und Erwähnungen in Problem 6645, als, wie dargestellt, durch
app/models/Fähigkeit.rb
:... dass "
dowload_code
" - Funktion ist nur für öffentliche Projekte.wget http://yourGiLabServer/projects/:id/repository/archive
: die einzige Herausforderung ist bei der Suche die id von deinem Projekt (aber ich sehe nicht, wie man die id von einem Projekt, wenn Sie suchen, um in demo.gitlab.com/gitlab/gitlab-recipes). Allerdings, in Ihrem Fall, müssen diese eine Erlaubnis, weilwget http://demo.gitlab.com/gitlab/gitlab-recipes/repository/archive.zip
funktioniert gut für mich.download_code
richtige für Ihre Benutzer.download_code
" Funktion nicht reserviert nur für öffentliche Projekte...versuchen, diese
$yourrepo
ist ohne die.git
ErweiterungFür mich die
private_token
und diesha
oderref
Parameter nicht zusammen gearbeitet. Also, ich änderte die Art und Weise, und ich sage meinem privaten token über einen header-parameter des Gitlab API, wie folgt:wget https://gitlab.com/<developer>/<project>/-/archive/master/<compressed source code> --header='PRIVATE-TOKEN: <access token>
. Ich habe den vollständigen Pfad von der web-basierten Projekt-Seite (rechts-Klick auf die Liste der downloadbaren komprimierten source-codes); und das access-token von gitlab.com/profile/personal_access_tokens (in meinem Fall wählte ich read_repository als Zugang der Wahl)Wollte ich nicht haben, um die Projekt-ID mit der ersten, sondern eher die Gruppe|org und repository-Namen, ähnlich wie die Github-HTTP-API. Dies ist, was funktioniert für mich auf 11.9.0-ce.0
Private/Interne Projekt
Öffentlichen Projekt
In diesem Beispiel
engineering
account-service
Vergessen Sie nicht, die
%2F
zwischengroup
undrepo
Hoffe, es hilft jemand