如何在 python 脚本中将密码添加到 git clone url?

How do I add the password to git clone url in python script?

我在 python lambda 中有这个小代码,它试图从 bitbucket 中提取一个 repo:

import git

def git_clone(username,password):
   new_dir = os.getcwd() + "/temp/"
   os.chdir(new_dir)

   GIT_URL = "https://{0}:{1}@bitbucket.org/test-project/test.git".format(username,password)

   git.Git(new_dir).clone(GIT_URL)

git 方法接受我的用户名但不接受我的密码。我的密码包含字母、数字和特殊字符。我得到这个错误:

URL using bad/illegal format or missing URL

这可能是格式问题吗?

See 文档 如果使用 bitbucket

git clone "https://x-token-auth:{token}@bitbucket.org/<user_name>/"

url = r"https://x-token-auth:{token}@bitbucket.org/<user_name>/"

git clone url

这是您的问题的解决方案。我测试了它并且有效。

#!/usr/bin/env python
import os 

def git_clone(password, username):
    if password and username:
        url_string = r"git clone https://{}:{}@bitbucket.org/{}/test.git".format(username, password, username)
        os.system(url_string)
git_clone(username="<username>", password="<password>")

如果这解决了您的问题,请不要忘记接受并点赞它作为正确答案