无人机如何克隆存储库?



对于gitlab,如果我得到client_id和client_secret,我如何克隆存储库,就像无人机一样。有API之类的东西吗?

>用于克隆,因为git clonenative命令是用于克隆的。

你可以尝试克隆:

git clone https://oauth2:TOKEN@ANY_GIT_PROVIDER_DOMAIN/YOUR_PROJECT/YOUR_REPO.git

(假设client_secret是令牌)

或:

git clone https://client_id:TOKEN@ANY_GIT_PROVIDER_DOMAIN/YOUR_PROJECT/YOUR_REPO.git

(将client_id替换为实际值)


然而,这被认为是不好的做法,并且Git 2.37 (Q3 2022)将显示警告:

URL '%s' uses plaintext credentials

最好缓存这些凭据:

git config --global credential.helper
xxx <= note that value
printf "host=gitlab.comnprotocol=httpsnusername=client_dnpassword=client_secret" | 
git credential-xxx store

(将xxxclient_idclient_secret替换为实际值)

git clone https://client_id@ANY_GIT_PROVIDER_DOMAIN/YOUR_PROJECT/YOUR_REPO.git

URL中没有token/secret。

最新更新