2016-04-22 14 views
0

プライベートトークンを提供するGitlabコミュニティエディションでホストされているプラ​​イベートgitリポジトリを複製できます。 私はgitpythonライブラリを使用してみましたし、私は次の操作を実行できます。Pythonスクリプトでプライベートトークンを使用してGitlabコミュニティプライベートレポからクローンを作成する

from os.path import abspath 
from git import Repo 
to_path = abspath("C:\mypath\test") 
Repo.clone_from("http://gitlab-ci-token:[email protected]/testgroup/test.git", to_path) 

これはうまくレポを作業してクローンされます。 問題は、リポジトリのCIトークンではなくプライベートトークンを使用したいということです。これは動作していません:

Repo.clone_from("http://my_login:[email protected]/testgroup/test.git", to_path) 

私はさらにパスワードを使用しようとしましたが、どちらも機能しませんでした。

私のプライベートトークンを使用したいのは、私のスクリプトがGitalbグループ(ここではtestgroup)に保存されているすべてのリポジトリを複製しようとしているからで、私はそのリポジトリをそこに置くことはできませんスクリプト内のCIトークン。

対話型認証なしでログイン/ private_tokenまたはログイン/パスワードを使用してリポジトリをクローンにすることができるすべてのソリューションを使用します。

+0

これはSSHアクセスが構築されているため、SSH鍵の設定を使用することを検討してください。 – zmo

答えて

0

私はあなたが何を意味するかわからない:私も自分のパスワードを使用しようとしたが、それはどちらを動作させることができなかった

。 URLにユーザー名とパスワードを設定する

動作するはずです:

Repo.clone_from("https://myself%40example.net:[email protected]/username/repo.git", to_path) 

また、代わりにあなたのソースコードに保存されたパスワードを持つのは、SSHを使用してリポジトリのクローンを作成、またはcredential helperシステムを使用することを検討すべきです。

+0

これは実際にlogin/passwordと一緒に働いています。 – Rbtnk

+0

URLエンコードできませんか? – ZeWaren

関連する問題