当前位置: 首页>>代码示例>>Python>>正文


Python Git.init方法代码示例

本文整理汇总了Python中git.Git.init方法的典型用法代码示例。如果您正苦于以下问题:Python Git.init方法的具体用法?Python Git.init怎么用?Python Git.init使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在git.Git的用法示例。


在下文中一共展示了Git.init方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: created_quark

# 需要导入模块: from git import Git [as 别名]
# 或者: from git.Git import init [as 别名]
    def created_quark(self, sender, new_quark):
        options = sender.options

        if self.git_is_installed():
            g = Git(options['path'])
            g.init()

            default_ignore = os.path.join(os.path.dirname(__file__), '..', 'default_gitignore.txt')
            ignore_path = os.path.join(options['path'], '.gitignore')
            with open(ignore_path, 'w') as ignore_file, open(default_ignore, 'r') as default_file:
                ignore_file.write(default_file.read())
                user_ignores = settings.user_gitignore()
                if user_ignores:
                    ignore_file.write('\n#SUPPLIED FROM ~/.qpmignore\n\n')
                    ignore_file.write(user_ignores)

            g.add(new_quark.get_quarkfile_path(options['path']))
            g.commit(m='Created quarkfile.')

            g.add('.gitignore')
            g.commit(m='Created gitignore.')

            g.add('.')
            if Repo(options['path']).is_dirty():
                g.commit(m='Initial commit of existing files.')

            g.tag(options['version'])

        else:
            self.msg(
                'WARNING: Git is not installed. Try http://git-scm.com/ or run the following:\n'
                + '\truby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"; brew install git'
            )
开发者ID:scztt,项目名称:qpm,代码行数:35,代码来源:git_addon.py

示例2: create

# 需要导入模块: from git import Git [as 别名]
# 或者: from git.Git import init [as 别名]
 def create(cls, path=None, mk_dir=False):
     """
     Initialise the repository WITH a working copy
     """
     if not os.path.exists(path) and mk_dir:
         os.mkdir(path)
     _git = Git(path or os.curdir)
     _git.init()
     return cls(path=path)
开发者ID:whitmo,项目名称:github-tools,代码行数:11,代码来源:gh_pages.py

示例3: initiate

# 需要导入模块: from git import Git [as 别名]
# 或者: from git.Git import init [as 别名]
  def initiate(self):
    """ Initiate git repository (or access current) at repoLocation """
    if not os.path.exists(self.repoLocation):
        os.makedirs(self.repoLocation)

    try:
      repo = Repo(self.repoLocation)
    except (InvalidGitRepositoryError, NoSuchPathError, GitCommandError):
      if self.debug: print 'Repository not found at %s:\ncreating repo' % (self.repoLocation)
      git = Git(self.repoLocation)
      git.init()
      repo = Repo(self.repoLocation)

    self.repo = repo
开发者ID:danodonovan,项目名称:gitSave,代码行数:16,代码来源:gitSave.py

示例4: initial

# 需要导入模块: from git import Git [as 别名]
# 或者: from git.Git import init [as 别名]
    def initial(self, prefix):
        """
        Set up the git repo at ``settings.GIT_REPO_PATH``.
        And add initial directory to the repo.

        """
        if not os.path.exists(self.repo_path):
            os.makedirs(self.repo_path)

        try:
            repo = Repo(self.repo_path)
        except (InvalidGitRepositoryError, NoSuchPathError, GitCommandError):
            git = Git(self.repo_path)
            git.init()
            repo = Repo(self.repo_path)

        field_path = os.path.normpath(os.path.join(self.repo_path, prefix))
        if not os.path.exists(field_path):
            os.makedirs(field_path)
开发者ID:jezdez-archive,项目名称:django-rcsfield,代码行数:21,代码来源:gitcore.py

示例5: Git

# 需要导入模块: from git import Git [as 别名]
# 或者: from git.Git import init [as 别名]
            dirpath = gdir
        else:
            dirpath = gdir + '.git'
    else:
        dirpath = gdir

    if not os.path.isdir(dirpath):
        os.mkdir(dirpath)

    g = Git(dirpath)
    # If is not Git repository, git init
    if not git.repo.fun.is_git_dir(dirpath):

        # bare repository
        if args.__dict__.get('b'):
            repo = g.init(dirpath, bare=True)
        else:
            # local repository
            g.init()
            
            # Make .gitignore
            if not os.path.isfile(dirpath + '/.gitignore'):
                f = open(dirpath + '/.gitignore', 'w')
                f.write('')
                f.close()

            # git add .gitignore and first commit
            if g.untracked_files or g.is_dirty():
                # git add
                g.add('.gitignore')
                # git commit
开发者ID:mkouhei,项目名称:practice-GitPython,代码行数:33,代码来源:test.py

示例6: GitFlow

# 需要导入模块: from git import Git [as 别名]
# 或者: from git.Git import init [as 别名]
class GitFlow(object):
    """
    Creates a :class:`GitFlow` instance.

    :param working_dir:
        The directory where the Git repo is located.  If not specified, the
        current working directory is used.

    When a :class:`GitFlow` class is instantiated, it auto-discovers all
    subclasses of :class:`gitflow.branches.BranchManager`, so there is no
    explicit registration required.
    """

    def _discover_branch_managers(self):
        managers = {}
        for cls in itersubclasses(BranchManager):
            # TODO: Initialize managers with the gitflow branch prefixes
            managers[cls.identifier] = cls(self)
        return managers

    def __init__(self, working_dir='.'):
        # Allow Repos to be passed in instead of strings
        self.repo = None
        if isinstance(working_dir, Repo):
            self.working_dir = working_dir.working_dir
        else:
            self.working_dir = working_dir

        self.git = Git(self.working_dir)
        try:
            self.repo = Repo(self.working_dir)
        except InvalidGitRepositoryError:
            pass

        self.managers = self._discover_branch_managers()
        self.defaults = {
            'gitflow.branch.master': 'master',
            'gitflow.branch.develop': 'develop',
            'gitflow.prefix.versiontag': '',
            'gitflow.origin': 'origin',
        }
        for identifier, manager in self.managers.items():
            self.defaults['gitflow.prefix.%s' % identifier] = manager.DEFAULT_PREFIX

    def _init_config(self, master=None, develop=None, prefixes={}, names={},
                     force_defaults=False):
        for setting, default in self.defaults.items():
            if force_defaults:
                value = default
            elif setting == 'gitflow.branch.master':
                value = master
            elif setting == 'gitflow.branch.develop':
                value = develop
            elif setting.startswith('gitflow.prefix.'):
                name = setting[len('gitflow.prefix.'):]
                value = prefixes.get(name, None)
            else:
                name = setting[len('gitflow.'):]
                value = names.get(name, None)
            if value is None:
                value = self.get(setting, default)
            self.set(setting, value)

    def _init_initial_commit(self):
        master = self.master_name()
        if master in self.repo.branches:
            # local `master` branch exists
            return
        elif self.origin_name(master) in self.repo.refs:
            # the origin branch counterpart exists
            origin = self.repo.refs[self.origin_name(master)]
            branch = self.repo.create_head(master, origin)
            branch.set_tracking_branch(origin)
        elif self.repo.heads:
            raise NotImplementedError(
                'Local and remote branches exist, but neither %s nor %s' % (
                    master, self.origin_name(master)
                ))
        else:
            # Create 'master' branch
            info('Creating branch %r' % master)
            c = self.repo.index.commit('Initial commit', head=False)
            self.repo.create_head(master, c)

    def _init_develop_branch(self):
        # assert master already exists
        assert self.master_name() in self.repo.refs
        develop = self.develop_name()
        if develop in self.repo.branches:
            # local `develop` branch exists, but do not switch there
            return
        if self.origin_name(develop) in self.repo.refs:
            # the origin branch counterpart exists
            origin = self.repo.refs[self.origin_name(develop)]
            branch = self.repo.create_head(develop, origin)
            branch.set_tracking_branch(origin)
        else:
            # Create 'develop' branch
            info('Creating branch %r' % develop)
            branch = self.repo.create_head(develop, self.master())
#.........这里部分代码省略.........
开发者ID:chassing,项目名称:gitflow,代码行数:103,代码来源:core.py

示例7: GitFlow

# 需要导入模块: from git import Git [as 别名]
# 或者: from git.Git import init [as 别名]
class GitFlow(object):
    """
    Creates a :class:`GitFlow` instance.

    :param working_dir:
        The directory where the Git repo is located.  If not specified, the
        current working directory is used.

    When a :class:`GitFlow` class is instantiated, it auto-discovers all
    subclasses of :class:`gitflow.branches.BranchManager`, so there is no
    explicit registration required.
    """

    def _discover_branch_managers(self):
        managers = {}
        for cls in itersubclasses(BranchManager):
            # TODO: Initialize managers with the gitflow branch prefixes
            managers[cls.identifier] = cls(self)
        return managers

    def __init__(self, working_dir='.'):
        # Allow Repos to be passed in instead of strings
        self.repo = None
        if isinstance(working_dir, Repo):
            self.working_dir = working_dir.working_dir
        else:
            self.working_dir = working_dir

        self.git = Git(self.working_dir)
        try:
            self.repo = Repo(self.working_dir)
        except InvalidGitRepositoryError:
            pass

        self.managers = self._discover_branch_managers()
        self.defaults = {
            'gitflow.branch.master': 'master',
            'gitflow.branch.develop': 'develop',
            'gitflow.prefix.versiontag': '',
            'gitflow.origin': 'origin',
            'gitflow.release.versionmatcher': '[0-9]+([.][0-9]+){2}',
            }
        for identifier, manager in self.managers.items():
            self.defaults['gitflow.prefix.%s' % identifier] = manager.DEFAULT_PREFIX


    def _init_config(self, master=None, develop=None, prefixes={}, names={},
                     force_defaults=False):
        for setting, default in self.defaults.items():
            if force_defaults:
                value = default
            elif setting == 'gitflow.branch.master':
                value = master
            elif setting == 'gitflow.branch.develop':
                value = develop
            elif setting.startswith('gitflow.prefix.'):
                name = setting[len('gitflow.prefix.'):]
                value = prefixes.get(name, None)
            else:
                name = setting[len('gitflow.'):]
                value = names.get(name, None)
            if value is None:
                value = self.get(setting, default)
            self.set(setting, value)

    def _init_initial_commit(self):
        master = self.master_name()
        if master in self.repo.branches:
            # local `master` branch exists
            return
        elif self.origin_name(master) in self.repo.refs:
            # the origin branch counterpart exists
            origin = self.repo.refs[self.origin_name(master)]
            branch = self.repo.create_head(master, origin)
            branch.set_tracking_branch(origin)
        elif self.repo.heads:
            raise NotImplementedError('Local and remote branches exist, '
                                     'but neither %s nor %s'
                                     % (master, self.origin_name(master) ))
        else:
            # Create 'master' branch
            info('Creating branch %r' % master)
            c = self.repo.index.commit('Initial commit', head=False)
            self.repo.create_head(master, c)

    def _init_develop_branch(self):
        # assert master already exists
        assert self.master_name() in self.repo.refs
        develop = self.develop_name()
        if develop in self.repo.branches:
            # local `develop` branch exists, but do not switch there
            return
        if self.origin_name(develop) in self.repo.refs:
            # the origin branch counterpart exists
            origin = self.repo.refs[self.origin_name(develop)]
            branch = self.repo.create_head(develop, origin)
            branch.set_tracking_branch(origin)
        else:
            # Create 'develop' branch
            info('Creating branch %r' % develop)
#.........这里部分代码省略.........
开发者ID:opicacek,项目名称:gitflow,代码行数:103,代码来源:core.py

示例8: GitModel

# 需要导入模块: from git import Git [as 别名]
# 或者: from git.Git import init [as 别名]
class GitModel(QObject) :

    statusRefreshed = Signal(str)

    def __init__(self):
        super(GitModel, self).__init__(None)
        self.configs = dict();
        self.repo = None
        
    def connect(self, path):
        self.repo = Repo(path)
        assert self.repo.bare == False
        
        self.git = Git(path)
        self.git.init()
        
    def run(self, cmd):
        print "run " + str(cmd)
        process = Popen(cmd)
        process.wait()
        print "returncode is " + str(process.returncode)
        return process.returncode
       
    def refreshStatus(self):
        self.status = self.git.status()    
        self.indexModel = self.getIndexModel()
        
        self.statusRefreshed.emit(self.status)
        
    def stageFile(self, path):
        return self.run(['git', 'add', path])
        
    def unstageFile(self, path):
        return self.run(['git', 'reset', 'HEAD', path])

    def executeCommit(self, msg):
        if msg is None or len(msg) == 0:
            print 'Message is empty'
            return -1

        rslt = self.run(['git', 'commit', '-m', msg])

        return rslt
    
    def undoRecentCommit(self):
        rslt = self.run(['git', 'reset', '--soft', 'HEAD^'])        
        return rslt

    def getIndexStatus(self):
        fileIndex = dict()
        
        MODIFIED = '#\tmodified:   '
        RENAMED = '#\trenamed:    '
        NEW_FILE = '#\tnew file:   '
        COMMITTED = '# Changes to be committed:'
        #CHANGED = '# Changed but not updated:'
        CHANGED = '# Changes not staged for commit:'
        UNTRACKED = '# Untracked files:'
        UNTRACKED_INTENT = '#    '
        

        self.isIdxClear = True
        lines = self.status.splitlines()
        type = ''
        for l in lines:
            print l
            
            #index
            if l == COMMITTED :
                type = 'I'
                self.isIdxClear = False
                
            #working directory
            elif l == CHANGED :
                type = 'W'

            if l.startswith(MODIFIED) :
                path = l[len(MODIFIED):]
                
                if type == 'I':
                    fileIndex[path] = 'M'
                elif type == 'W':
                    if path in fileIndex.keys():
                        fileIndex[path] += 'C'
                    else:
                        fileIndex[path] = 'C'
                continue
            
            if l.startswith(RENAMED) :
                path = l[len(RENAMED):].split(' ')[2]               
                fileIndex[path] = 'R'
            
            if l.startswith(NEW_FILE) :
                path = l[len(NEW_FILE):]                
                fileIndex[path] = 'N'                
                
            if l == UNTRACKED :
                type = 'U'
            
                idx = lines.index(l) + 3
#.........这里部分代码省略.........
开发者ID:flexdimension,项目名称:GitGrown_old,代码行数:103,代码来源:GitModel.py


注:本文中的git.Git.init方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。