commit message from python script

This commit is contained in:
2023-04-13 21:18:43 +02:00
parent e3c0af1262
commit 5e105988a9
2 changed files with 74 additions and 41 deletions

View File

@@ -0,0 +1,44 @@
#!/usr/bin/env python3
import os, git
class my_git():
def __init__(self, check_folder = str) -> None:
self.check_folders = check_folder
def check_folder(self):
li_all_fo_git = []
for root, dirs, files in os.walk(self.check_folders, topdown=False):
for name in dirs:
FullPATH = str(os.path.join(root, name))
if name == ".git":
li_all_fo_git.append(root)
return li_all_fo_git
def git_pull(self, git_folder):
repo = git.Repo(git_folder)
for remote in repo.remotes:
remote_name = repo.remote(name=remote.name)
remote_name.pull()
def git_push(self, git_folder):
repo = git.Repo(git_folder)
if not repo.is_dirty(untracked_files=True):
print('No Changes detected.')
else:
print("Changes detected.")
for remote in repo.remotes:
print(remote.name, remote.url)
repo.git.add('--all')
repo.git.commit('-m', 'commit message from python script')
remote_name = repo.remote(name=remote.name)
remote_name.push()
def git_main(self):
list_git_folder = my_git.check_folder(self)
for git_folder_s in list_git_folder:
print(git_folder_s)
#my_git.git_pull(self, git_folder=git_folder_s)
my_git.git_push(self, git_folder=git_folder_s)
if __name__ == "__main__":
check_my_git = my_git(check_folder= os.sep + "home" + os.sep + os.environ["USER"] + os.sep + "Projekte")
check_my_git.git_main()