Exemple #1
0
def _pull_request(pull, working_branch):
    if pull.user == Settings.USER:
        nickname = 'origin'
    else:
        try:
            nickname = Remote.inverse()[pull.user]
        except KeyError:
            Remote.add_remote(pull.user, pull.user)
            nickname = pull.user

    keywords = {
        'nickname': nickname,
        'pull_branch': pull.branch,
        'working_branch': working_branch,
        'print': print if ARGS.verbose else None,
    }

    Call.runlines(
        """git fetch {nickname} {pull_branch}
           git checkout {nickname}/{pull_branch}
           git rebase --preserve-merges {working_branch}""",
        **keywords)

    # Store the commit ID at this point so we can merge back to it.
    keywords['commit_id'] = Git.commit_id()
    Call.runlines(
        """git checkout {working_branch}
           git merge --ff-only {commit_id}""",
        **keywords)

    _check_vcxproj()
Exemple #2
0
def _check_vcxproj():
    # Now run scons vcxproj and see if anything changes.
    if not CHECK_VCXPROJ:
        return
    Call.runlines('scons vcxproj')
    status = Git.git('status')
    if not MATCH in status:
        # TODO: Check to see if src/soci/src/core/version.h is the only
        # difference.
        raise VcxprojException()