0

I have tried the below python code to clone the repository from Git but it is not cloning and it is returning the value as 1.

import subprocess
repo = input ("Repository:") 
_repo_ = f '{repo}'
print ("Choose local repository ") 
local = input ("Repository:") 
local_path = f '{local}'
cmd = " git clone (git repository link)"+_repo_+".git"
print(str(cmd)) 
return_value =subprocess.call(cmd, shell=True) 
print (Return value:" +str(return_value)) 
2
  • Does this answer your question? Running Git clone command in Python Commented May 18, 2021 at 10:45
  • I removed a typo in your code. The line cmd = " git clone (git repository link)"+_repo_+".git" was missing a + for concatenation. Also, have you checked the outpu of the subprocess command? Use subprocess.check_call to get the output as pointed out in this answer: stackoverflow.com/a/58332167/15016163 Commented May 18, 2021 at 10:53

2 Answers 2

2

Just found this library gitpython

from git import Repo

Try

Repo.clone_from(url,repo)

OR

git.Git(PATH).clone(URL)
Sign up to request clarification or add additional context in comments.

3 Comments

What's the error ? pip install GitPython worked fine just tested
Thanks. I have also tried with from git import Repo.. Error thrown with no module named git. So I tried to install using pip install gitpython. Unable to do it because of error : Retrying failed to establish connection
Have you check to see if you have git installed?
0

you could simply do this

import subprocess

repo = input("Repository:")
cmd = "git clone {}.git".format(repo)


print(str(cmd))
return_value = subprocess.call(cmd, shell=True)
print("Return value:" + str(return_value))

2 Comments

Again got the return value as 1 if I pass the repo link
is the repo public ? is git asking for credentials ? do you have access to the git repo? and are you using python3 ?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.