Пример #1
0
 def setUp(self):
     path1 = utils.get_temporary_location()
     path2 = utils.get_temporary_location()
     path2 = os.path.join(path2, "repo")
     self.repo1 = LocalRepository(path1)
     self.repo1.init()
     for i in range(10):
         with open(os.path.join(self.repo1.path, "file_%s.txt" % i),
                   "wb") as output:
             print >> output, "This is file", i
     self.repo1.addAll()
     self.repo1.commit(message="init")
     self.repo2 = LocalRepository(path2)
     self.repo2.clone(self.repo1)
     self.assertTrue(os.path.isdir(self.repo2.path))
Пример #2
0
def create_repo():
    returned = LocalRepository(get_temporary_location())
    returned.init()
    for i in range(10):
        filename = "file_%s.txt" % i
        full_filename = os.path.join(returned.path, filename)
        with open(full_filename, "wb") as f:
            print >> f, "initial content"
        returned.add(filename)
    returned.commit(message="initial")
    return returned
Пример #3
0
 def testCloneModifyPush(self):
     new_repo = LocalRepository(utils.get_temporary_location())        
     new_repo.clone(self.repo)
     #checkout a different branch to comply with git 1.7.0
     prev_branch = self.repo.getCurrentBranch()
     self.repo.checkout(self.repo.createBranch('temp'))        
     self.assertReposEqual(self.repo, new_repo)
     utils.commit_change(new_repo)
     new_repo.push()
     self.repo.checkout(prev_branch)        
     self.assertReposEqual(self.repo, new_repo)        
     utils.delete_repository(new_repo)
Пример #4
0
    def __init__(self, rootdir=None):
        if not rootdir:
            self.rootdir = Config().get("working_repo")
        else:
            self.rootdir = rootdir

        # gitpy hardcodes the git command without a path, so it's using PATH to find it.  We need to set the path for
        # git.
        dir = dirname(Config().get('git'))
        environ['PATH'] = "%s:%s" % (dir, environ['PATH'])
        repo = LocalRepository(self.rootdir)

        self.repo = repo
Пример #5
0
 def testAddingRemotes(self):
     new_repo = LocalRepository(utils.get_temporary_location())
     new_repo.init()
     with open(os.path.join(new_repo.path, "some_file"), "wb") as f:
         print >> f, "new file"
     new_repo.addAll()
     new_repo.commit(message="initial change")
     REMOTE_NAME = 'remote'
     remote = new_repo.addRemote(REMOTE_NAME, self.repo.path)
     self.assertEquals(remote.name, REMOTE_NAME)
     self.assertEquals(remote.url, self.repo.path)
     self.assertFalse(new_repo.containsCommit(self.repo.getHead()))
     remote.fetch()
     remote.prune()
     self.assertTrue(new_repo.containsCommit(self.repo.getHead()))
     branches = list(remote.getBranches())
     self.assertTrue(len(branches) > 0)
     for branch in branches:
         self.assertTrue(type(branch in new_repo.getHead()) is bool)
Пример #6
0
 def setUp(self):
     self.dirname = get_temporary_location()
     self.repo = LocalRepository(self.dirname)
     self.assertFalse(os.path.exists(self.dirname))
     self.assertFalse(self.repo.isValid())