# Path: wikked/scm/base.py
# class SourceControl(object):
#     def __init__(self):
#         pass
# 
#     def start(self, wiki):
#         pass
# 
#     def init(self, wiki):
#         pass
# 
#     def postInit(self):
#         pass
# 
#     def getSpecialFilenames(self):
#         raise NotImplementedError()
# 
#     def getHistory(self, path=None, limit=10, after_rev=None):
#         raise NotImplementedError()
# 
#     def getState(self, path):
#         raise NotImplementedError()
# 
#     def getRevision(self, path, rev):
#         raise NotImplementedError()
# 
#     def diff(self, path, rev1, rev2):
#         raise NotImplementedError()
# 
#     def commit(self, paths, op_meta):
#         pass
# 
#     def revert(self, paths=None):
#         pass
# 
# STATE_NEW = 2
# 
# STATE_MODIFIED = 1
# 
# STATE_COMMITTED = 0


import os
import os.path
import logging
import subprocess
    import pygit2
from .base import (
        SourceControl,
        STATE_NEW, STATE_MODIFIED, STATE_COMMITTED)

try:
    SUPPORTS_GIT = True
except ImportError:
    SUPPORTS_GIT = False


logger = logging.getLogger(__name__)


class GitBaseSourceControl(SourceControl):
    def __init__(self, root):

# Path: wikked/scm/base.py
# class SourceControl(object):
#     def __init__(self):
#         pass
# 
#     def start(self, wiki):
#         pass
# 
#     def init(self, wiki):
#         pass
# 
#     def postInit(self):
#         pass
# 
#     def getSpecialFilenames(self):
#         raise NotImplementedError()
# 
#     def getHistory(self, path=None, limit=10, after_rev=None):
#         raise NotImplementedError()
# 
#     def getState(self, path):
#         raise NotImplementedError()
# 
#     def getRevision(self, path, rev):
#         raise NotImplementedError()
# 
#     def diff(self, path, rev1, rev2):
#         raise NotImplementedError()
# 
#     def commit(self, paths, op_meta):
#         pass
# 
#     def revert(self, paths=None):
#         pass
# 
# STATE_NEW = 2
# 
# STATE_MODIFIED = 1
# 
# STATE_COMMITTED = 0


# Path: wikked/scm/git.py
import os
import os.path
import logging
import subprocess
    import pygit2
from .base import (
        SourceControl,
        STATE_NEW, STATE_MODIFIED, STATE_COMMITTED)


try:
    SUPPORTS_GIT = True
except ImportError:
    SUPPORTS_GIT = False


logger = logging.getLogger(__name__)


class GitBaseSourceControl(SourceControl):
    def __init__(self, root):

        SourceControl.__init__(self)