You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1.3 KiB
36 lines
1.3 KiB
from sh import git, ErrorReturnCode
|
|
import os
|
|
|
|
|
|
class EEGit:
|
|
"""Intialization of core variables"""
|
|
def ___init__():
|
|
# TODO method for core variables
|
|
pass
|
|
|
|
def add(self, paths, msg="Intializating"):
|
|
for path in paths:
|
|
global git
|
|
git = git.bake("--git-dir={0}/.git".format(path),
|
|
"--work-tree={0}".format(path))
|
|
if os.path.isdir(path):
|
|
if not os.path.isdir(path+"/.git"):
|
|
try:
|
|
self.app.log.debug("EEGit: git init at {0}"
|
|
.format(path))
|
|
git.init(path)
|
|
except ErrorReturnCode as e:
|
|
self.app.log.error(e)
|
|
sys.exit(1)
|
|
status = git.status("-s")
|
|
if len(status.splitlines()) > 0:
|
|
try:
|
|
self.app.log.debug("EEGit: git commit at {0}"
|
|
.format(path))
|
|
git.add("--all")
|
|
git.commit("-am {0}".format(msg))
|
|
except ErrorReturnCode as e:
|
|
self.app.log.error(e)
|
|
sys.exit(1)
|
|
else:
|
|
self.app.log.debug("EEGit: Path {0} not present".format(path))
|
|
|