git 使用 python 推送
git push using python
我有本地 git 存储库。我正在使用 python 使用 gitpython 库提交本地回购。我想将提交推送到 github。我如何使用 gitpython 或任何其他库来执行此操作。
我在网上看了看,但没有可用的解决方案。谁能帮我这个。
提前致谢
from git import Repo,remote
rw_dir = 'path/to/your/local/repo'
repo = Repo(rw_dir)
'''Enter code to commit the repository here.
After commit run the following code to push the commit to remote repo.
I am pushing to master branch here'''
origin = repo.remote(name='origin')
origin.push()
用于使用 python 提交和推送到 GitHub 的代码如下,
import subprocess as cmd
def git_push_automation():
try:
cp = cmd.run("file path", check=True, shell=True)
print("cp", cp)
cmd.run('git commit -m "message"', check=True, shell=True)
cmd.run("git push -u origin master -f", check=True, shell=True)
print("Success")
return True
except:
print("Error git automation")
return False
如果您使用基于密码的身份验证
import subprocess,os,commands
git_push = " cd /to/the/repo/directory/ ; git add -A ; git commit -m 'my message' ; git push --repo https://<username_here>:<password_here>@bitbucket.org/fullpath/to/your_repo.git --all "
git_push_status = commands.getstatusoutput(git_push)
print(git_push_status[1])
主要是正确替换回购 URL,例如,如果您的回购和凭据是
username_here
: manjunath
password_here
: password@123
然后 git push URL 应该是这样的,注意密码中的特殊字符需要替换(我已经将密码中的 @
替换为 %40
在 URL)
https://manjunath:password%40123@bitbucket.org/fullpath/to/your_repo.git
我有本地 git 存储库。我正在使用 python 使用 gitpython 库提交本地回购。我想将提交推送到 github。我如何使用 gitpython 或任何其他库来执行此操作。 我在网上看了看,但没有可用的解决方案。谁能帮我这个。 提前致谢
from git import Repo,remote
rw_dir = 'path/to/your/local/repo'
repo = Repo(rw_dir)
'''Enter code to commit the repository here.
After commit run the following code to push the commit to remote repo.
I am pushing to master branch here'''
origin = repo.remote(name='origin')
origin.push()
用于使用 python 提交和推送到 GitHub 的代码如下,
import subprocess as cmd
def git_push_automation():
try:
cp = cmd.run("file path", check=True, shell=True)
print("cp", cp)
cmd.run('git commit -m "message"', check=True, shell=True)
cmd.run("git push -u origin master -f", check=True, shell=True)
print("Success")
return True
except:
print("Error git automation")
return False
如果您使用基于密码的身份验证
import subprocess,os,commands
git_push = " cd /to/the/repo/directory/ ; git add -A ; git commit -m 'my message' ; git push --repo https://<username_here>:<password_here>@bitbucket.org/fullpath/to/your_repo.git --all "
git_push_status = commands.getstatusoutput(git_push)
print(git_push_status[1])
主要是正确替换回购 URL,例如,如果您的回购和凭据是
username_here
: manjunath
password_here
: password@123
然后 git push URL 应该是这样的,注意密码中的特殊字符需要替换(我已经将密码中的 @
替换为 %40
在 URL)
https://manjunath:password%40123@bitbucket.org/fullpath/to/your_repo.git