def pull(self, repo, filename, force_branch): import os import urllib2 git = GitCmd(filename, repo) git.get_branch() git.set_force_branch(force_branch) fileurl = '%s%s' % (self.url, filename) print 'cmd >> Downloading %s' % fileurl headers = {} headers['gitbundler-user'] = self.user headers['gitbundler-password'] = self.password request = urllib2.Request(fileurl, None, headers) server = urllib2.urlopen(request) bundle = open(os.path.join(repo, filename), 'wb') bundle.write(server.read()) bundle.close() server.close() if os.path.exists(os.path.join(repo, filename)): print " Info :: %s" % git.ls_remote(filename) print " Server:: %s" % self.url print git.pull_bundle(filename) #os.unlink(os.path.relpath(os.path.join(repo, filename))) else: print "error: git bundle download fails."